资源描述
摘 要
伴伴随Internet蓬勃发展,网络购物中心作为电子商务一个形式正以其高效、低成本优势,逐步成为新兴经营模式和理念,大家已经不再满足用途信息浏览和公布,而是渴望着能够充足享受网络所带来愈加多便利。网络购物正适应了当今社会快节奏地生活,使用户足不出户便能够方便快捷轻松地选购自己喜爱商品。
本系统便是尝试用JSP在网络上架构一个动态电子商务网站,它是在Windows XP下,以Oracle为数据库开发平台,Tomcat网络信息服务作为应用服务器,采取JSP(Java Server Pages)技术开发网上购物系统。她分前台部分和后台部分,前台部分由用户使用,关键包含用户注册,购物车管理,订单管理,个人资料管理,留言板管理等功效;后台部分由管理员使用,关键包含商品管理,处理订单,用户信息管理,链接信息管理等功效。
建立后网站系统是一个动态、交互式、含有商品提供、系统管理、用户留言等功效电子商务网站。
【关键字】JSP Oracle Tomcat 网上购物系统
Designed in the Online shopping system based on JSP
Along with the vigorous development of the Internet, e-commerce networks as a shopping center is a form of its highly efficient, low-cost advantages, gradually emerging as a business model and philosophy, there is no longer meet use and dissemination of information browsing, but a desire to bring the full enjoyment network more convenient. Internet shopping is being adapted to the fast pace of today's society to live, so that customers can enjoy the convenience of fast and easy way to purchase their own like commodities.
The system is trying to use JSP in a dynamic network of e-commerce websites structure, which is in Windows XP, SQL Server for database development in platform, Tomcat application server as a network information services, use JSP (Java Server Pages) technology development online shopping system. Prospects and the background of some of his hours, the prospects of users, including users registered, a shopping cart management, order management, personal information management, message board management functions; Background in part by managers, including commodity management, processing orders, customer information management, information management, and other functions links.
After the establishment of the website is a dynamic, interactive, with commodities, systems management, voice mail, and other functions of the e-commerce website users.
Keywords JSP;Oracle;Tomcat;Online shopping system
第一章 序言
1.1系统开发背景及意义
1.1.1系统开发背景
一、需求产生
伴随市场经济逐步形成,全球化经济已在中国快速发展起来。以往销售模式正在受到空前挑战:大家已经对去固定场所、购置(出售)固定物品交易方法所带来不便越来越感到不满,交易时间长、效率低。高额运费、销售场地凭租费等繁多额外开支也给商家带来沉重成本支出。为了适应市场、适应经济前进步伐,买家和商家全部在努力主动地寻求一个能够带来高效率、低成本销售模式。计算机及世界互联网飞速发展使得这种新销售模式成为可能。最近网上商城已慢慢被大家所熟悉,网上购物这种生活方法已悄然形成。网上商城使得商家能够把商店开到互联网上来、而买家也能够到互联网上选择购置自己喜爱东西。网上商城不需要商店凭租费;新商品能够用最短时间吸引用户眼球,因为它不需要那么长运输时间。网上商城为商家节省了大笔运输费用、场地凭租费等额外成本,同时也为买家带来了无穷方便性。因为它不需要你花上半天活一天时间去商场在玲郎满目标众多商品中选择你需要东西。网上商城使得“买东西、不出门”成为现实。
伴随计算机技术、通信技术日益发展,互联网逐步深入和应用,网上商城越来越多出现在我们身边,它直接作为一个优异交易方法,被越来越多人所接收。网上购物最大程度地方便了用户,你能够经过WWW浏览器实现WEB购物。
网上购物不仅改变了企业进行运作模式,使网上商城成为传统商务补充和发展,也使大家改变了消费观念和消费习惯。 自从几十年前电子计算机出现,就为网上购物发展发明了客观条件。不过它发展还要借助于网络,所以其快速发展是在因特网广泛应用上。能够预见,网上购物将成为商业普及、贸易主流,必将影响着千家万户生活和消费行为,并日益成为社会商业贸易活动关键形式
廉价网络资源使得网上商城成本低廉,世界性互联网络带来无比宽广市场,给商家/买家带来众多利益带来无限需求。
二、中国外形势
国外网上购物形势:
(1)美国市场研究企业Forrester估计,美国“企业对企业(BtoB)"销售将从1997年190亿美元,快速窜升到2510亿美元,进而升至1.4亿万美元,每十二个月翻倍。同期在GDP中所占比重从0.2%上升到9.7%。美国投资银行GoldmanSachs一样乐观,估计美国电子商务销售将从今年1140亿美元增加到1.5亿万美元。据美国MerrillLynch投资银行研究表明,最受电子商务影响行业是计算机技术和电子业,它们在因特网上交易将达3950亿美元,随即依次是公用事业、航运、仓储、石化、汽车等。美国今年3月6日公布了第一个官方全国网络销售统计数据,1999年,美国“企业对企业"交易额达成了1450亿美元,大大高于200亿美元“企业对消费者(BtoC)"网上交易额。电子商务快速崛起,使越来越多美国企业感到缺了它不行,并产生了一个紧迫感。据调查,约有60%企业认为电子商务关键,而42%企业甚至说,假如不搞电子商务,企业生存将面临威胁。据报道,美国英特尔企业(Intel)每十二个月有150亿美元销售是在线完成;全球最大网络设备供给商思科企业(Cisco)40%销售收入是靠网络实现。
(2)欧盟正在为新经济到来做好准备。欧盟计划拿出更多钱用于教育,全部学校要在以前上网,全部老师应在之前接收使用因特网训练,全部公民在之前应含有在这方面接收训练可能性。
(3)据日本投资机构所罗门集团最新公布一项调查汇报显示,Internet能够给日本固步自封传统经济带来变革,从而有可能使日本发展成世界最大电子商务市场。世界电子工业巨头日本索尼企业今年2月1日宣告,该企业将从即日起经过Internet销售该企业电子产品。其它企业也闻风而动,一场网络销售变革有望在日本发生。日本企业对企业间电子商务贸易总值两年前只有9万亿日元,行家估计,到之前这一数值有望扩大到67万亿日元。
(4)WTO短期内不会向电子商务征税,1999年年底在西雅图举行世贸组织多边会谈达成一项决议,对Internet网上交易将延缓征税。WTO部长们普遍认为,政府不应该对新生电子交易干涉过多。美国商务部秘书William Daley说,估计这项政策将连续到两年左右。她还说:“这项征税禁令并非永久性,它只会连续18个月到2年。"美国在线、微软和AT&T等电信业和网络企业在此之前已经向美国贸易官员极力游说不要向Internet商贸征税。微软一位讲话人说:“这项决议对于世界经济发展大有裨益。”分析家们估计,电子商务交易额在未来六年内将达成2万亿至5万亿美元,其中美国境内交易额将占到二分之一以上。
中国电子商务形势分析:
一项由信息产业部和赛迪网共同举行调查显示,截止到3月底,中国已经有消费类电子商务网站1100多家,其中购物类网站近800家,拍卖类网战有100家左右,服务类网站中远程教育网站180家,远程医疗网站20家。1999年,电子商务销售5500万元,有些人甚至预言今年将达人民币3.5亿元。8848、Eachnet、Yabuy等新兴网络企业开起了网上销售业务。联想、方正、海尔等开始尝试BtoB业务。
互联网研究和发展中心(CII,)8月8日在京公布《CII中国电子商务指数汇报》显示,CII中国电子商务总指数为51.91,现在中国电子商务尚处于起步阶段。其中,CII电子商务安全指数最高,为58.84;而电子商务效益指数最低,为37.76;技术和应用发展不平衡:
(1)从交易额看,中国电子商务交易金额少,在社会商品零售额中还未形成规模,不是交易主流;
(2)开展电子商务基础设施仍较差;
(3)从交易内容看,交易关键限于书籍、光盘、计算机及相关产品、信息咨询服务等,传统产品少、实物性商品交易比重较低;
(4)从付款方法看,关键是货到付款方法,即以网下付款为主;
(5)从用户满意度看,对基础设施、交易品种、结算方法、货物佩松、信誉程度等方面,总体评价还是不很满意;
(6)从政策环境看,对于中国电信资费、投资融资、安全保障、法律法规等方面满意程度不是很高。
测算结果还显示,电子商务比传统交易方法节省11.61%费用和19.34
时间。
三、网上购物系统现实状况
现在在中国PHP和ASP应用最为广泛。而JSP因为是一个较新技术,中国采取较少。但在国外,JSP已经是比较流行一个技术,尤其是电子商务类网站,多采取JSP。
采取PHP网站如新浪网(sina)、中国人(Chinaren)等,但因为PHP本身存在部分缺点,使得它不适合应用于大型电子商务站点,而更适合部分小型商业站点。
首先,PHP缺乏规模支持。其次,缺乏多层结构支持。对于大负荷站点,处理方法只有一个:分布计算。数据库、应用逻辑层、表示逻辑层相互分开,而且同层也能够依据流量分开,组成二维阵列。而PHP则缺乏这种支持。还有上面提到过一点,PHP提供数据库接口支持不统一,这就使得它不适合利用在电子商务中。
ASP和JSP则没有以上缺点,ASP能够经过Microsoft WindowsdCOM/DCOM取得ActiveX规模支持,经过DCOM和Transcation Server取得结构支持;JSP能够经过SUN JavaJava Class和EJB取得规模支持,经过EJB/CORBA和众多厂商Application Server取得结构支持。
三者中,JSP应该是未来发展趋势。世界上部分大电子商务处理方案提供商全部采取JSP/Servlet。比较出名如IBME-business,它关键是采取JSP/ServletWebSphere;西方另外一个很著名电子商务软件提供商,Intershop。它原来产品Intershop1 2, 3, 4占据了关键电子商务软件份额。它们全部是经过CGI来提供支持 。但去年10月后它推出了Enfinity,一个采取JSP/Servlet电子商务Application Server,而且声言不再开发传统软件。
总来说,ASP,PHP,JSP三者全部有相当数量支持者,而这三者也各有所长,在开发过程中,我们应该依据实际需要来使用最适宜技术,本系统则采取较新jsp技术,首先jsp安全性和跨平台性比很好,其次,我也期望能从开发该系统过程中,深入学习一下这门编程语言。
1.1.2系统开发意义
Internet发展,为改变传统商业运作模式提供了一个技术上可行性方案:利用Internet技术和协议,建立多种企业内部网Intranet,企业外部网Extranet,经过廉价通讯手段,将买家和卖家、厂商和合作伙伴紧密结合在了一起,消除时间和空间带来障碍,从而大大节省了交易成本,扩大了交易范围。而在实际生活中,这种方案已经被广泛利用到了实际商业活动中了,大家将这种交易模式称为电子商务。
当今比较流行网上购物系统国外有“淘宝(.com)”,中国有“当当(.com)”。它们全部是相当优异电子商务网站,对其它网站提供了良好典范。设计中能够学习参考她们思想,了解和熟悉整个网站开发步骤及完整电子商务网站应有功效和注意事项。
设计和完成一个电子商务网站,将会牵涉到很多技术上问题,如:动态网页制作技术,后台数据库设计和管理,经过实际制作个网站,能够避免纸上谈兵,在实践中掌握上述技术使用。
1.2系统概述
系统分析是平台开发一个不可缺乏步骤,为了能够使本系统愈加好、更完善地被设计出来,就必需优异行调查研究。在系统调查基础上,对新系统功效进行细致分析,从而才能够开发出完整系统设计
一、网站设计目标
本平台利用现在比较广泛JSP+Oracle数据库架构实现,此系统分为前台管理和后台管理。前台管理是友好操作界面,供用户浏览、查询使用。包含:浏览商品、查询商品、订购商品、购物车、用户维护等功效;后台管理是提供给管理员,其中包含:商品管理、用户管理等。使管理员从繁琐手工操作中解脱出来,并提升了办公效率。
二、网站可行性分析
伴随计算机技术发展和网络人口增加,网络世界也越来越广博,越来越丰富,电子商务已经成为网上一股时尚。我们相信要不了太长有时间,用户就能够在网络世界上取得她们在现实世界上能够取得全部商品和服务。
可行性研究是为了搞清楚系统开发项目是不是能够实现和值得进行研究过程,实际上是一次大大简化系统分析和系统设计过程,所以,进行可实施性分析是很必需,也是很关键,经过最初设计目标和进行市场调查得出以下四点可行性分析:
(1)经济可行性:该平台设计只是作为本人毕业设计,又因为本人设计能力有限,其功效还不能完善,所以没有什么经济效益可谈。
(2)技术可行性:JSP+Servlet技术已经较为成熟。
(3)运行可行性:该系统需要搭建JVM即JAVA虚拟机和Tomcat环境,在此环境下系统,而且在正确连接数据库后能够正常运行。
(4)法律可行性:该平台是作为毕业设计和商业无关,又因为是自主开发设计,所以不会组成侵权,在法律上是可行。
经过以上可行性分析,我将采取JSP+Servlet相结合技术,利用Access数据库对网站进行建设。
三、网站深入调查
经过以上初步调查和研究,而且确定了该平台可行性,并决定开发本平台,为了能够对现行平台内容进行充足了解,使所要开发平台更含有实用性和适应性,经过两个月实习调查和指导老师耐心介绍,设计出该平台功效以下:
1. 能够完成用户基础信息录入注册和用户基础信息个人前台和后台管理。
2. 能够完成管理员对网站商品资料(商品添加、商品审查)会员管理(会员审查)、网站信息管理(新闻添加、修改删除、公告设置),和常规设置(广告添加,友谊链接)功效。
3. 能过电子商品名称,电子商品分类进行搜索。
4. 能够经过查看购物车对所选商品进行确定、挑选,经过定单查询对支付费用进行确定。
经过前一阶段调查和研究分析,我已确定了该平台设计关键功效,对每个功效模块也作了具体描述,下面就来具体分析该平台设计特点和具体思想。
四、网站设计特点
我所设计和开发网上购物平台是经过很长时间调查和分析才开始具体实施,它关键特点是改变了以往购物只能过现实商场才能达成结果,采取Web技术,借助于Internet互联网广泛应用技术,达成资源共享,提升以往购物不足,缩短大家时间和提升工作效率,含有很好交互性,从而实现信息化,规范化,系统化,网络化平台,使整个购物活动过程简单、方便、易行。
五、网站开发设计思想
网上购物平台关键是对后台管理和前台操作。后台管理是管理员对本网站维护,经过商品资料(商品添加、商品修改)会员管理(会员审查)网站信息管理(新闻添加、修改删除、公告设置),和常规设置(广告添加,友谊链接)等功效达成对网站管理。前台操作是用户登录到本网站,能够进行用户注册,经过网站精品推荐或商品搜索功效,找到自己想要买商品,装入购物车,提交定单进行购置。
网上购物平台特点是用户和电子商品信息量很大,管理员需要整理信息很多,为让管理员轻松、方便、快捷管理,该平台采取符合购置电子商品基础标准,满足广大用户日益增加数量,并达成操作过程中直观、方便、实用、安全等要求。
六、系统设计总体规则
不管哪个网站全部要有它自己设计规则。该平台也一样,它关键设计规则有:
简单性:在实现平台功效同时,尽可能让平台操作简单易懂,这对于一个网站来说是很关键。
针对性:该平台设计是网上购物系统及后台管理定向开发设计,所以含有专业突出和很强针对性。
实用性:该平台能完成电子商品展示和管理员管理基础信息,含有良好实用性。
七、系统关键架构及开发模式
系统建设关键在于其所使用架构,而网上购物这种基于web系统,传统c/s架构已经不能满足大量用户访问和操作,b/s基于浏览器架构则是现在网络系统应用主流,它将大量数据处理工作交给服务器端来处理,用户端只用经过一般IE浏览器即可访问系统,方便快捷而且利于系统更新和维护,java语言在该方面更是得天独厚,j2ee规范出现则使系统开发愈加规范,层次愈加清楚,更利于对复杂事务处理,而且在安全性方面也做愈加好。基于mvc开发步骤则使开发过程愈加清楚明了,利于做部分复杂逻辑实现,从而节省了开发周期和开发成本。
八、基于B/S体系结构:
在B/S体系结构系统中,用户经过浏览器向分布在网络上很多服务器发出请求,服务器对浏览器请求进行处理,将用户所需信息返回到浏览器。B/S结构简化了用户机工作,用户机上只需配置少许用户端软件。服务器将担负更多工作,对数据库访问和应用程序实施将在服务器上完成。浏览器发出请求,而其它如数据请求、加工、结果返回和动态网页生成等工作全部由Web Server完成。实际上B/S体系结构是把二层C/S结构事务处理逻辑模块从用户机任务中分离出来,由Web服务器单独组成一层来负担其任务,这么用户机压力减轻了,把负荷分配给了Web服务器。这种三层体系结构图3.1所表示。
Browse浏览器
Web服务器
数据库
图1-1 B/S三层架构示意图
这种结构不仅把用户机从沉重负担和不停对其提升性能要求中解放出来,也把技术维护人员从繁重维护升级工作中解脱出来。因为用户机把事务处理逻辑部分分给了功效服务器,使用户机一下子"苗条"了很多,不再负责处理复杂计算和数据访问等关键事务,只负责显示部分,所以维护人员不再为程序维护工作奔波于每个用户机之间,而把关键精力放在功效服务器上程序更新工作。这种三层结构在层和层之间相互独立,任何一层改变不会影响其它层功效。
1.3系统开发工具及相关技术介绍
1.3.1系统开发环境
操作系统是windows 、windows xp或linux
开发环境是JDK1.6+TOMCAT+ORACLE。
开发工具是ECLIPSE(MYECLIPSE)
1.3.1 JSP技术介绍
在传统网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标识(tag),就组成了JSP网页(*.jsp)。JSP页面看上去象标准HTML和XML页面,并附带有JSP引擎能够处理和抽取额外元件。
Web服务器在碰到访问JSP网页请求时,首先实施其中程序片段,然后将实施结果以HTML格式返回给用户。
程序片段能够操作数据库、重新定向网页和发送E-mail等,这就是建立动态网站所需要功效。
全部程序全部在服务器端实施,网络上传送给用户端仅是得到结果,对用户浏览器要求最低。它基于强大Java语言,含有良好伸缩性,在网络数据库应用开发领域含有得天独厚优势。
JSP技术在多个方面加速了动态Web页面开发:
(1)将内容生成和显示进行分离
使用JSP技术,Web页面开发人员能够使用HTML或XML标识来设计和格式化最终页面。使用JSP标识或小脚原来生成页面上动态内容(内容是依据请求来改变,比如请求帐户信息或特定一瓶酒价格)。生成内容逻辑被封装在标识和JavaBeans组件中,而且捆绑在小脚本中,全部脚本在服务器端运行。假如关键逻辑被封装在标识和Beans中,那么其它人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容生成。
在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求内容(比如,经过访问JavaBeans组件,使用JDBCTM技术访问数据库,或包含文件),而且将结果以HTML(或XML)页面形式发送回浏览器。这有利于作者保护自己代码,而又确保任何基于HTMLWeb浏览器完全可用性。
(2)强调可重用组件
绝大多数JSP页面依靠于可重用,跨平台组件(JavaBeans或Enterprise JavaBeansTM组件)来实施应用程序所要求更为复杂处理。开发人员能够共享和交换实施一般操作组件,或使得这些组件为更多使用者或用户团体所使用。基于组件方法加速了总体开发过程,而且使得多种组织在她们现有技能和优化结果开发努力中得到平衡。
(3)采取标识简化页面开发
Web页面开发人员不会全部是熟悉脚本语言编程人员。JavaServer Page技术封装了很多功效,这些功效是在易用、和JSP相关XML标识中进行动态内容生成所需要。标准JSP标识能够访问和实例化JavaBeans组件,设置或检索组件属性,下载Applet,和实施用其它方法更难于编码和耗时功效。
经过开发定制化标识库,JSP技术是能够扩展。以后,第三方开发人员和其它人员能够为常见功效创建自己标识库。这使得Web页面开发人员能够使用熟悉工具和如同标识一样实施特定功效构件来工作。
(4)JSP能提供全部Servlets功效
和Servlets相比,JSP能提供全部Servlets功效,它比用Println书写和修改HTML更方便。能够更明确地进行分工,Web页面设计人员编写HTML,只需留出空间让Servlets程序员插入动态部分即可。JSP技术能够支持高度复杂基于Web应用。
(5)健壮存放管理和安全性
因为JSP页面内置脚本语言是基于Java编程语言,而且全部JSP页面全部被编译成为Java Servlet,JSP页面就含有Java技术全部好处,包含健壮存放管理和安全性。
(6)一次编写,各处运行
作为Java平台一部分,JSP拥有Java编程语言“一次编写,各处运行”特点。伴随越来越多供给商将JSP支持添加到她们产品中,您能够使用自己所选择服务器和工具,更改工具或服务器并不影响目前应用
1.3.2 JDBC技术介绍
一、JDBC概述
jdbc是一个可用于实施SQL语句JAVA API ,由部分JAVA编写类和界面组成。
JDBC为数据库应用人员和数据库前台工具开发人员开发了一个标准接口,使开发人员能够用存JAVA语言编写完整数据库应用程序.
二、JDBCDRIVER四种驱动
1、jdbc odbc桥(bridge)
过程:Java ->jdbc-odbc桥->odbc->厂商db源码->数据库server
特点:
a、 能够实现java和odbc交互
b、必需经过jdbc-odbc桥和odbc衔接后才能够和数据库建立通信,。。效率低
c、必需在用户端安装odbcjriver,因为无法在网络中要求全部用户安装odbc驱动,所以不适合在internet中应用。
d、适合试验。不适合项目。
2、部分java实现当地API驱动
过程:java->当地API驱动->数据库server
特点 : 不需要有复杂中间过程就能够和数据库建立通信,在效率上相对和第一驱动功效有显著提升。
必需要求用户端下载当地API驱动程序才能确保和数据库通信,通用性不好,也不适宜在internet上应用。
3、纯java实现网络驱动:type3 数据库频繁切换时用
过程:java->网络协议驱动->中间件服务器(能够和多个数据库进行交互,功效庞大)->数据库server
特点:
a、 因为大部功效全部是由中间件服务器来实现,所以网络协议驱动下下载及安装十分方便,从而相对前两种驱动提了效率
b、因为中间件服务器提供多个数据库交互支持,所以适合要求和多个数据库连接应用程序使用。
c、设计思想起源于分层开发,任务分明,保持良好低耦合度。
d、有中间服务器转换过程,所以效率不是最高一个驱动。
4、纯java实现当地协议驱动:type 4
过程:java--》当地驱动 ————》数据库server
特点:
a、因为几乎没有和中间件交互过程,效率很高。
b、驱动和应用程序容为一体,只需要下载就能够使用方便
c、适合应用程序一直谅解一个数据库要求。
三、JDBC编程 包含到API举例
1、Driver : 驱动 "oracle.jdbc.driver.OracleDriver"
2、DriverManager :驱动管理器,产生连接对象(Connetion)
3、Connection 连接对象类 实例对应一个数据库源
4、Statement : 专门用于和数据库交互
5、PreparedStatement:效率上有提升statement,能够设置参数
6、CallableStatement 用于操作数据库端“存放过程”
7、ResultSet :结果集
8、DatabaseMetadata:数据库元数据
9、ResultSetMetada :结果集原数据 能够经过Metadata实例 获取数据库和结果己相关信息
10 、Types 类型
四、JDBC编程基础步骤
1)、注册驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
2)、建立连接
Connection conn = DriverManager.getConnection(url,pro);
3)、创建专门和数据库交互statment对象
Statement stmt = conn.createStatement();
4)、实施sql语句
String sql ="select * from users";
ResultSet rs = stmt.executeQuery(sql);
5)、处理查询结果
while(rs.next())
{
System.out.print(rs.getInt(1)+" ");
System.out.print(rs.getString(2)+" ");
System.out.println(rs.getInt(3));
}
6)、关闭数据库及相关对象
rs.close();
stmt.close();
conn.close();
五、JDBC中异常处理框架
try{
conn.setAutoCommit();
......
mint();
}catch(Excption e){
conn.rollback();
}
finally{close(conn,stm)}
1.3.3 ORACLE介绍
因为数据库能够方便存放和读取数据,所以是存放数据最好场所,而oracle是现在世界上最好用使用最广数据库。
一、关系型数据库
1)1970年提出
2)最早提出关系型数据库理论企业是IBM
3)最早作出型数据库产品企业是Oracle
4)关系型数据库理论:
a)数据库由一系列对象组成,最常见一个是表(table),其它对象还
包含索引、视图、同义词、序列等
b) 经过一定操作作用于这些对象
经过SQL语言对对象进行CRUD操作
c)为确保数据完整性和一致性,数据要有一定规则(约束)
二、SQL、SQL*Plus和 PL/SQL
1)SQL:结构化查询语言,是由ANSI负责维护
2)SQL*Plus:命令行形式Oracle用户端软件,能够去实施SQL语言也是一个简单报表编辑器它维护着一个buffer,缓存着最终一次实施SQL语句
3)PL/SQL:是oracle企业在标准SQL基础上增加了部分新内容形成一个语言,仅仅能操作oracle操作
三、SQL语言分类
1)Data retrieval(数据获取语言):SELECT
2)Data manipulation language(数据操作语言):INSERT、UPDATE、DELETE
3)Data definition language(数据定义语言):CREATE,ALTER,DROP,RENAME,TRUNCATE
4)Transaction control(事务控制语言):COMMIT,ROLLBACK,SAVEPOINT
5)Data control language(数据控制语言):GRANT,REVOKE
四、登录到数据库
1)sqlplus
2)sqlplus username
3)sqlplus username/password:不安全
五、语法
1、SELECT [DISTINCT] {*,column[alias],....}FROM table;
*:表示全部列
DISTINCT:表示去掉反复行,只显示一次
1)出现位置:
a、紧跟在select后面
b、组函数中
2)假如distinct后面跟多个列表示多个列联合唯一
2、给列指定别名:只需要在列名后面加上别名,中间用空格隔开
如:select first_name as name from s_emp;
3、怎样将两个列内容连在一起
只需要在两个列中间加上||
如:select first_name||last_name from s_emp;
4、什么是空(null)和怎样处理
在oracle中没有分配值就是null,一个表示式中只要有一个列为空,整个表示式就为空,能够使用空值转换函数(NVL)处理空值,这个函数有两个参数,一个是可能出现空值列,另外一个参数是假如出现空值要替换值,两个参数类型要一致
默认右对齐,默认大写,时间、字符串用单引号
5、怎样查看表结构
使用desc[ribe] 关键字 如:desc[ribe] s_emp;
6、oracle中常见数据类型
number:存放任何数字
number(p,s)
number(p)==number(p,0)
char[(5)]:定长,默认值是1,char和char(1)相同
varchar(20):不定长
varchar2(20): 不定长,(oracle 特有,和varchar是一样)
date 日期:一共有七个时间分量(世纪/年/月/日/时/分秒)
七、sql*plus常见命令
(1)A[PPEND] text:在目前行后面追加
(2)/:表示实施sqlplus buffer中内容
(3)C[HANGE]/old/new 更改目前行内容
(4)CL[EAR] BUFF[ER] 清空buffer
(5)DEL 删除目前行
(6)I[NPUT] text:表示在目前行后面新增加一行
(7)L[IST] n:显示buffer中内容
(8)n text:整行替换
(9)!:表示临时退出SQLPLUS,实施unix命令
SAVE filename:将所实施SQL命令保留成一个文件
GET filename:将文件中SQL命令加载到buffer中
START filename:将文件中SQL命令加载到buffer中并实施
@filename:和start是一样
EDIT filename:编辑 保留SQL命令文件
SPOOL filename:录屏
EXIT:退出sqlplus
八、常见单行函数
1、理字符串
LOWER :变成小写
UPPER :变成大写
INITCAP :把首字母变成大写,其它小写
CONCAT :连接字符串
SUBSTR :截取字符串
LENGTH :字符串长度;
2、理空值
NVL :替换空值
3、理数字
a、ROUND:四舍五入
b、TRUNC:直接舍去
c、MOD:求余数
4、理日期
MONTHS_BETWEENS:计算两个日期之间相关月
ADD_MONTHS :给一个日期加上多个月
NEXT_DAY :计算一个日期下一个星期几
LAST_DAY :计算30天最终一天
ROUND :走过二分之一加上,没有过二分之一舍去
TRUNC :直接舍去
八、事务(transaction)
事务是组合在一起不可分割多个操作,多个操作要么同时失败,要么同时成功
事务特点(ACID):
1)原子性(atomicity):多个操作不可分割,要么同时失败,要么同时成功
2)一致性(consistency):事务操作前后,数据要保持一致
如:转帐前两个帐户余额总和为1000,那么转帐后两个帐户余额总和也应该是1000
3)隔离性(isolation):一个事务在实施过程中,其它事务是不可见,就仿佛同一时刻只有一个事务在实施
4)持久性(durability):事务结束以后要将事物持久保留在物理设备上,确保下次仍然能够看到数据
九、表结构操作
1、新增加列
ALTER TABLE table_name
ADD (column datatype [default expr][not null]
[,column datatype]...);
a、新增加列同时能够增加一个默认值
b、新增加列同时只能加not null 约束
2、修改列
ALTER TABLE table_name
展开阅读全文