小型书店管理系统毕业设计文档Oracle课程设计_第1页
小型书店管理系统毕业设计文档Oracle课程设计_第2页
小型书店管理系统毕业设计文档Oracle课程设计_第3页
小型书店管理系统毕业设计文档Oracle课程设计_第4页
小型书店管理系统毕业设计文档Oracle课程设计_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

大型数据库课程设计小型书店管理系统 大型数据库技术课程设计说明书 小型书店管理系统 学院: 计算机与信息科学学院 专业: 软件工程 班级: 学号: 姓名: 指导教师: 完成时间: 成绩评定: 湖南工学院课程设计课题任务书学院:计算机与信息科学学院 专业:软件工程 指导教师学生姓名课题名称小型书店管理系统内容及任务1、 目标:通过对小型书店管理系统的数据库设计与软件开发, 使学生加深对大型数据库课程理论和基本知识的理解,熟练使用Oracle数据库系统相关知识,掌握使用数据库进行软件设计的基本方法,提高运用Oracle数据库管理系统解决实际问题的能力。2、 内容:利用Oracle数据库管理系统进行后台数据库的开发,设计完成的小型书店管理系统应当包含数据添加、修改、删除、查询等功能3、 要求:要求利用Oracle作为后台数据库的开发工具,遵循软件工程规范,采用结构化或面向对象分析设计方法,开发设计该系统。(1)需求分析、方案论证、软件结构、模块划分、数据库设计等应详尽合理。(2)功能齐全,具有一定实用价值。(3)代码可读性好。主要参考资料1高树芳.软件工程.大连理工大学出版社,2013年8月出版2徐志立.数据库实用技术.中国铁道出版社.2013年1月出版3 明日科技.java web 从入门到精通.清华大学出版社 4 java2使用教程 耿祥义,张跃平 清华大学出版社5 数据库系统概论(第四版) 王珊,萨师煊 高等教育出版社6杨永健,刘尚毅 Oracle数据库管理、开发与实践M.人民邮电出版社7郭克华,李敏,陈志刚 Java Web程序设计M.北京清华大学出版社摘要内容Abstract内容目录第一章绪论11.1 设计背景及目的11.2 设计范围及相关领域11.3 设计分析与研究11.4 预期结果及意义2第二章开发工具及技术简介32.1 开发工具简介32.1.1 Oracle简介32.1.2 Tomcat 简介32.1.3 Eclipse 简介42.1.4 PLSQL Developer简介42.1.5 开发技术简介42.2 本章小结5第三章小型书店管理系统可行性分析63.1 编写目的63.2 产品介绍63.3 项目目标63.4可行性研究72.4.1技术条件方面的可行性73.4.2社会因素方面的可行性73.5系统资源83.5.1人力资源83.5.2网络及硬件83.5.3操作系统8第四章小型书店管理系统需求分析94.1 编写目的94.2 功能需求94.3 数据流图94.4 用例分析124.4.1 管理员用例关系124.4.2 客户用例关系134.4.3 管理员与客户之间的用例关系144.5 系统非功能性需求144.6 本章小结15第五章小型书店管理系统概要设计165.1 编写目的165.1.1 系统数据E-R图165.2 系统数据表字段设计195.3 功能模块设计205.3.1 系统整体功能模块设计205.3.2 系统功能模块图205.4 系统出错处理设计225.4.1 出错信息225.4.2 补救信息235.5 本章小结23第六章小型书店管理系统详细设计246.1 编写目的246.1.1 系统模块详细设计256.1.2 系统数据库物理数据模型图266.2 数据库详细设计276.2.1 创建用户和表空间276.2.2 授予用户权限286.2.3 创建表296.2.4 数据插入效果图306.2.5 设置表与表的约束316.3 本章总结34第七章小型书店管理系统测试与维护357.1 编写目的357.2 边界值测试法397.3 系统维护397.3.1 出错处理397.3.3 安全保密设计397.4 本章小结39课程设计总结40参考文献41第一章 绪论1.1 设计背景及目的随着信息技术的迅猛发展,计算机技术的日渐成熟,科学技术的力量已经得到了广大人民在思想上的认可。尤其是计算机的有效利用,在当今社会各行各业的各个方面起到了越来越重要的作用。书店管理也是一样,特别是大中型书店,信息管理也越是显得尤为重要。如果没有一个好的书店管理系统,对于书店的经营是非常不利的。在信息时代,传统的书店管理方式必然被计算机为基础的信息管理系统所取代。因为作为计算机应用的一部分,使用计算机对图书信息进行管理,具有人工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高书店管理的效率。为了跟上信息时代的步伐,数字化书店管理系统的出现将是必然。它将为人民的生活提供更好的帮助。根据所学知识,创建一个小型书店管理系统,为书店管理人员提供更为便捷的管理方式,提高书店运行的效率,同时也为读者提供方便。本系统主要是改善对书店管理者、供应商以及客户之间的繁琐的管理方式,不过,界面美化还需改善。1.2 设计范围及相关领域本管理系统的设计主要针对书店管理人员在购书和租、售书方面的管理。而设计主要涉及数据库方面的知识,对于界面的创建、美化等可以运Dreamweaver、Bootstrap前端框架等方面的知识进行扩充。1.3 设计分析与研究小型书店管理系统主要用于书店的管理,主要包括以下几种基本表:图书信息表:图书名称、订购数量、订购时间、订购单价、金额、出版社名称、作者名称;供应商名称等;供应商信息表:供应商名称、地址、电话,联系人等;客户信息表:客户编号、名称、年龄、性别、累计购书金额等;销售信息表:时间、销售名称、数量、销售单价、客户编号、客户名称、金额等。本书店管理系统则主要依赖以上几个表,而这几个表也反映出了本系统所要实现的基本功能。但要实现本系统的各项功能,则还要考虑其他很多方面,如开发环境、应用环境等等。我主要运用Oracle 11g来创建本数据库。1.4 预期结果及意义基本实现基本表中所有的功能,保证基本安全性能的有效性。符合本次课程设计的基本要求。我认为有两方面的意义:一是通过书店管理系统的设计,进一步加深自己对数据库的认识,熟悉数据库的基本操作和软件设计的整体运作,理论联系实际。二是运用书店管理系统,排出了一系列不必要的繁琐步骤,节省时间,将极大地提高书店管理人员的工作效率,方便了人们。第二章 开发工具及技术简介2.1 开发工具简介2.1.1 Oracle简介Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。ORACLE数据库系统是美国ORACLE公司提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据库管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。Oracle数据库最新版本为Oracle Database 12c。Oracle数据库12c引入了一个新的多承租方架构,使用该架构可轻松部署和管理数据库云。此外,一些创新特性可最大限度地提高资源使用率和灵活性,如Oracle Multitenant可快速整合多个数据库,而Automatic Data Optimization和Heat Map能以更高的密度压缩数据和对数据分层。这些独一无二的技术进步再加上在可用性、安全性和大数据支持方面的主要增强,使得Oracle数据库12c成为私有云和公有云部署的理想平台。2.1.2 Tomcat 简介Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。目前Tomcat最新版本为9.0。2.1.3 Eclipse 简介Eclipse是一个框架和一组服务,通过插件组件来扩展,提供了包含不同插件的发行包,最典型的就是Java IDE开发工具。所以说Eclipse开发平台或者工具实质上就是插件的集合。 尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言,例如,支持诸如C/C+和PHP等网站建设编程语言的插件已经可用,Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。2.1.4 PLSQL Developer简介PL/SQL Developer是一个集成开发环境,专门面向Oracle数据库存储程序单元的开发。如今,有越来越多的商业逻辑和应用逻辑转向了Oracle Server,因此,PL/SQL编程也成了整个开发过程的一个重要组成部分。PL/SQL Developer侧重于易用性、代码品质和生产力,充分发挥Oracle应用程序开发过程中的主要优势。PL/SQL(Procedural Language/SQL)是一种过程化语言,属于第三代语言,它与C、C+、Java等语言一样关注于处理细节,可以用来实现比较复杂的业务逻辑。它允许SQL的数据操纵语言和查询语句包含在块结构和代码过程语言中,使PL/SQL成为一个功能强大的事务处理语言。 2.1.5 开发技术简介(1)JSP简介JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它1是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件中插入Java程序段和JSP标记(tag),从而形成JSP文件,后缀名为。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。(2)B/S结构介绍B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安装SQL Server、Oracle、MYSQL等数据库。浏览器通过Web Server 同数据库进行数据交互。B/S结构相对于C/S结构具有如下优点:(1)采用B/S模式进行开发的系统具有良好的可移植性和跨平台性。 (2)B/S减少了系统的开发和维护的工作量。B/S模式开发的系统的功能都可以在WEB服务器上实现,使得系统维护的变得简单和方便。(3)用户的操作使用变得更加简单。B/S模式的客户端是一个通用的浏览器软件。浏览器软件提供了统一、友好、易用的界面。用户无需经过专门培训,就能直接操作使用。2.2 本章小结本章主要介绍了B/S(浏览器/服务器)结构、JSP动态网页开发技术和Bootstrap前端框架等开发技术。同时也介绍了本系统在开发工程中需要用到的开发工具,如Oracle 11g数据库、PLSQL Developer、Eclipse、Tomcat 服务器等。第三章 小型书店管理系统可行性分析3.1 编写目的在系统的开发前期对系统进行可行性分析是十分必要的一个环节,这对于保证资源的合理使用,避免免费是十分必要的,也是项目一旦开始能顺利进行的必要保证。信息系统的建设是一项投资大,时间长的复杂工程,可行性研究更为必要,也更复杂,更困难。“可行性”是对研究系统是否有必要,是否具备必要的条件。可行性的含义不仅包括可行性,还包括必要性,合理性。3.2 产品介绍伴随着计算机软件技术的高速发展,为了对计算机的有效利用,在当今社会各行各业的各个方面起到了越来越重要的作用。书店管理也是一样,特别是大中型书店,信息管理也越是显得尤为重要。如果没有一个好的书店管理系统,对于书店的经营是非常不利的。在信息时代,传统的书店管理方式必然被计算机为基础的信息管理系统所取代。因此,我的数据库课程设计也就选择了信息管理的开发-小型书店管理系统。3.3 项目目标在两天内基本实现数据库之间的连接,在一周内基本实现界面在两周内实现基本的书店管理系统需求的功能。对现有系统的分析表1 系统术语解释表序号术语所指对像或含义1客户在本系统经过实名登记,并通过电子支付的人员。2供应商在本系统经过实名登记,通过在数据显示的人员。3注册注册成为会员或管理员,确保真实性,安全性与可靠性。4登陆登陆本系统,才能进行书籍添加、书籍查看、库存查看和书籍删除。5商品选择当客户查看书籍时,可以按书籍的各种分类来选择想要的书籍。6注册审核审核会员注册时所填资料的真实性。7商品审核审核店主发布的书籍的真实性和合法性。8公告管理提示当前消费走向和一些最新的消息。9数据确认供应商与店主达成的交易协定。10订单撤消供应商缺货或已超过付款期限,订单被撤消。对现有系统的分析数据处理流程客户图书信息终端注册管理员处理提出申请ID号反馈修改个人信息 客户、供应商数据查询记录文 件修改系统数据、注销客户数据文 件图1 当前系统的分析数据处理流3.4可行性研究2.4.1技术条件方面的可行性从以上分析可知,该系统是一个小型的信息管理系统。运用所学的知识和收集的资料与老师的协助目前可实现,开发技术的成熟,并有成功经验的借鉴。开发人员的数量和能力满足开发要求。在规定期限内,本系统能够完成。3.4.2社会因素方面的可行性(1)法律可行性本系统的开发与应用不涉及侵犯专利权、版权的方面的问题。书店管理系统是人工系统的优化,操作步骤更为简单。管理员在短时间的指导内就可以熟练的实用本软件。本系统的开发与应用与用户单位的行政管理、工作制度没有冲突,员工的素质能够满足软件系统的要求。3.5系统资源3.5.1人力资源 :李明3.5.2网络及硬件数据中心可以放在书店库房,要求申请互联网IP地址。或者放在有关电信机房采用主机托管模式。网络中心数据服务器:P4 2.6、4G内存以上,配Oracle 11g。网络中心应用服务器: P4 2.6、4G内存以上。客户机:普通ATM,配:Windows 7系统,网络连接。3.5.3操作系统Server: Windows Server 2003/2008数据库开发使用:PLSQL Developer代码设计工具:Eclipse第四章 小型书店管理系统需求分析4.1 编写目的针对开发项目拟订的工作内容来安排项目组织、进度、项目的风险管理、配置管理等活动,确定项目的开发周期模型及开发过程,跟踪机制及监督机制,使项目开发活动有组织、有计划的遵循一定的流程开展。同时收集用于管理控制本项目开发所需的所有信息。本项目软件开发计划可以为相关子项目专题计划组提供指导与参考。4.2 功能需求小型书店需要创建的四个表基本信息如下:(1)图书信息表字段:图书名称、订购数量、订购时间、订购单价、金 额、出版社名称、作者名称;供应商名称等。(2)供应商信息表字段:供应商名称、地址、电话,联系人。(3)客户信息表字段:客户编号、名称、年龄、性别、累计购书金额等。(4)销售信息表字段:时间、销售名称、数量、销售单价、客户编号、客户名称、金额等。对于书店管理系统,书店管理人员可以对图书的进与出进行管理,与此同时,客户也可以对要购买的书进行查询。本系统的查询操作主要包括:(1)查询当月书店销售金额、营业金额。(2)查询某种图书库存数量。(3)查询当月销量最好的图书信息。(4)按供应商名称查询订购信息。(5)查询购买次数超过3次的客户信息。(6)本管理系统可以及时更新信息,保证数据的准确性。4.3 数据流图数据流图对系统数据进行描述如图2至7。图2 顶层数据流图图3 0层数据流图图4 一层数据流图图5 一层数据流图图6 二层数据流图图7 二层数据流图4.4 用例分析小型书店管理系统中,系统数据由供应商表、图书表、销售表、客户表之间数据存储关系所以连接的。 系统管理员可以对用户账号进行管理,与书籍信息、供应商信息进行查询、修改和编辑。还可以查询当月书店销售金额、营业金额;查询某种图书库存数量;查询当月销量最好的图书信息;按供应商名称查询订购信息;查询购买次数超过3次的客户信息等信息管理。4.4.1 管理员用例关系管理员可以对图书信息、供应商信息、销售信息、客户信息进行查询、修改和编辑。图8 管理员用例图4.4.2 客户用例关系管理员可以对图书信息、供应商信息进行查询同时也可以参看书籍库存。图9 客户用例图4.4.3 管理员与客户之间的用例关系图10 系统用例图4.5 系统非功能性需求表2 用户界面需求需求名称详细要求窗体显示位置_1除客户端主窗体之外,所有窗体初次启动时在屏幕位置居中。窗体显示位置_2普通用户和管理员用户界面位置在同一位置。界面颜色主要以白色为主。表3 软硬件环境需求需求名称详细要求硬件要求IBM兼容机、Intel Pentium III 800/AMD K7以上处理器、128M以上内存。支持标准网络协议的网卡。系统平台Windows10 / windows7运行环境Eclipse表4 产品质量需求主要质量属性详细要求正确性消息在不同系统平台之间进行传递和显示时不会出现乱码现象。健壮性能够容纳多人同时在线操作,服务器端程序连续应工作半年以上。可靠性应用程序异常退出及崩溃的机率小于等于5%。性能,效率用户消息发送与接收的延迟时间小于等于5秒。易用性不用安装,操作简便。清晰性安全性保证用户的信息在传输过程中不被窃取、不会泄漏至外网。可扩展性可在当前需求基础之上进行功能上的扩展。兼容性可运行在大多数主流的硬件环境中。可移植性可运行在大多数主流的操作平台上。4.6 本章小结本章是小型书店管理系统需求分析,主要撰写了文档书写的目的和数据交互之间的三层数据流图。模块间的需求用用例图绘制出了管理员与客户之间的功能模块与需求。从而对非功能需求也做出了明确的规定。第五章 小型书店管理系统概要设计5.1 编写目的本文档将概要描述小型书店管理系统中的功能模块。图书信息模块,图书名称、订购数量、订购时间、订购单价、金额、出版社名称、作者名称;供应商名称等;供应商模块,供应商名称、地址、电话,联系人;客户信息模块,客户编号、名称、年龄、性别、累计购书金额等;销售信息模块,时间、销售名称、数量、销售单价、客户编号、客户名称、金额,信息查询模块等。同时也能查询当月书店销售金额、营业金额;查询某种图书库存数量;查询当月销量最好的图书信息;按供应商名称查询订购信息;查询购买次数超过3次的客户信息。5.1.1 系统数据E-R图图11 系统数据E-R图图12 客户表图图13 供应商表图图14 图书表图图15 销售表图5.2 系统数据表字段设计表6 供应商信息表字段数据类型长度约束是否为主键备注providernameVarchaer2100not nullYes供应商名称addVarchaer2100not nullno地址telVarchaer250not nullno电话contactsVarchaer2100not nullno联系人表7 图书信息表字段数据类型长度约束是否为主键备注bookidVarchaer250not nullYes书籍idprovidernameVarchaer2100not nullno供应商名称booknameVarchaer2100not nullno图书名称Orderquantitynumber10not nullno订单数量Ordertimedatenot nullno订购日期Onepricefloatnot nullno订购单价pricefloatnot nullno金额pressnameVarchaer2100not nullno出版社名称authorVarchaer2100not nullno作者名称表8 销售信息表字段数据类型长度约束是否为主键备注saleNameVarchaer2100not nullyes销售名称bookIdVarchaer250not nullno书籍ididVarchaer2100not nullno客户编号customersNameVarchaer2100not nullno客户名称timedatenot nullno时间quantitynumber10not nullno数量onepricefloatnot nullno销售单价pricefloatnot nullno金额表9 客户信息表字段数据类型长度约束是否为主键备注idVarchaer2100not nullyes客户编号userNameVarchaer2100not nullno名称ageVarchaer210no年龄sexVarchaer250no性别sumPriceVarchaer2not nullno累计购书金额5.3 功能模块设计5.3.1 系统整体功能模块设计图16 系统模块总图5.3.2 系统功能模块图图17 供应商模块图图18 图书模块图图19 销售模块图图20 客户模块图图21 信息查询模块图5.4 系统出错处理设计5.4.1 出错信息系统对一下错误做出正确处理:(1)无法与数据库链接时,对数据库进行检查、修改等正确处理。(2)存取款的系统数据错误。(3)系统失灵,服务器承载不了过多数据。5.4.2 补救信息(1)提示数据库无法连接的错误号及错误信息。(2)定期进行系统维护和更新。(3)提示监控器无法正常工作及其错误信息。(4)对系统的数据金额显示错误通过法律手段进行追回。5.5 本章小结本章主要对小型书店管理系统做出了概要设计,首先设计了小型书店管理系统的数据之间的关系,也就是E-R图,主要描述了客户表、图书表、销售表、供应商表之间的关系。再次设计了各个表中的数据字典,把客户表、图书表、销售表、供应商表中所有的字段、数据类型、长度、约束、是否为主键、备注都一一列出。最后初步绘制出了系统的客户模块、图书模块、销售模块、供应模块等系统模块图。第六章 小型书店管理系统详细设计6.1 编写目的在小型书店管理系统编码过程中能规范的根据小型书店管理系统详细设计文档进行数据库设计和编码设计。能较好的应对系统中的系统错误加以纠正。系统详细类图设计。图22 系统类图6.1.1 系统模块详细设计如表10至表14表10 供应商信息模块表程 序名 称供应商信息模块标识符无相关数据 表provider输 入单击添加供应商按钮。输 出显示在供应商列表。程序处理说明1. 供应商信息模块可以对信息编辑和删除。2. 添加供应商中需要填充供应商名称、地址、电话、联系人字段单击确定按钮。表11 图书信息模块表程 序名 称图书信息模块标识符无相关数据 表book输 入单击添加图书信息按钮。输 出显示在图书信息列表。程序处理说明1.图书信息模块可以对图书信息进行编辑和删除。2.添加图书信息表中需要填充图书ID、供应商名称、图书名称、订购名称、订购时间、订购单价、金额、出版社名称、作者名称字段,单击确定按钮。表12 销售信息模块表程 序名 称销售信息模块标识符无相关数据 表Sell输 入单击添加销售信息按钮。输 出显示在销售信息列表。程序处理说明1.销售信息模块可以对信息编辑和删除。2.添加销售信息表中需要填充销售名称、图书ID、时间、数量、销售单价、客户编号、客户名称、金额字段单击确定按钮。3、在填写时间字段时可以在列表中自动选择。表13 客户信息模块表程 序名 称客户信息模块标识符无相关数据 表customers输 入单击添加客户信息按钮。输 出显示在客户信息列表。程序处理说明1.客户信息模块可以对信息编辑和删除。2.添加客户信息表中需要填充名称、年龄、性别、累计购书金额、客户编号字段单击确定按钮。表14 供应商表程 序名 称供应商表标识符无相关数据 表无输 入输入查询条件。输 出显示出需要查询的列表。程序处理说明输入查询条件后可以对供应商信息、图书信息、销售信息、客户信息进行查询。 如图:23图23 信息查询图6.1.2 系统数据库物理数据模型图图24 物理数据模型图6.2 数据库详细设计6.2.1 创建用户和表空间(1)建表空间。create tablespace Shop_space datafile F:OracleWorkspaceShop_space.mdfsize 20M autoextend ON NEXT 10Mmaxsize 100M;(2)创建临时表空间。create temporary tablespace Shop_temporarytempfile F:OracleWorkspaceShop_temporary.mdfsize 20M autoextend ON NEXT 20M。maxsize 100M;(3)创建用户BookShopData,密码a。create user BookShopData identified by a(4)赋予权限,数据库连接与资源权限。grant connection,resource to BookShopData(5)赋予权限,创建会话与表权限。grant create session,create table to BookShopData(6)提交。commit图25 创建BookShopData用户图6.2.2 授予用户权限(1)连接数据库权限。 Grant connect to BookShopData;(2)创建表权限。Grant create table to BookShopData;(3)创建视图权限。Grant create view to BookShopData;(4)创建序列权限。Grant create sequence to BookShopData;(5)创建同义词权限。Grant create synonym to BookShopData;(6)创建存储过程、函数权限。Grant create procedure to BookShopData;(7)创建触发器权限。Grant create trigger to BookShopData;(8)表空间使用权限。Grant unlimited tablespace to BookShopData;图26 授予权限图6.2.3 创建表创建供应商表(provider_table)。create table provider_table(providerName varchar2(20) primary key, -供应商名称providerAddress varchar2(50) not null, -联系地址providerPhone varchar2(20) not null, -手机号码providerContacts varchar2(20) not null -联系人)tablespace Shop_space;创建订单表(orderBook_table)也就是图书信息表。create table orderBook_table(bookId varchar2(20) primary key, -图书IDbookName varchar2(50) not null, -图书名称orderCount number(10) not null, -订单数量orderTime date not null, -订单日期orderPrice float not null, -订单价格orderSumPrice float not null, -订单总价bookPressName varchar2(20) not null, -出版社名称bookAuthorName varchar2(10) not null, -作者名称providerName varchar2(20) not null -供应商名称)tablespace Shop_space;创建客户表(customer_table)。create table customer_table(customerId varchar2(10) primary key, -客户编号customerName varchar2(20) not null, -客户姓名customerAge number(10) not null, -客户年龄customerSex char(2) not null, -客户性别customerOrderPrice float not null, -购书总价customerOrderNumber number(10) not null -购买次数)tablespace Shop_space;创建销售表(sell_table)。create table sell_table(sellId varchar2(10) primary key, -销售编号bookId varchar2(20) not null, -销售图书IDbookName varchar2(50) not null, -销售图书名称customerId varchar2(10) not null, -客户编号customerName varchar2(20) not null, -客户名称sellTime date not null, -销售日期sellCount number(10) not null, -销售数量sellPrice float not null, -销售单价、sellSumPrice float not null -销售总价)tablespace Shop_space;6.2.4 数据插入效果图检查customer_table表中数据。select * from customer_table;检查provider_table表中数据。select * from provider_table;检查orderBook_table表中数据。select * from orderBook_table;检查sell_table表中数据。select * from sell_table;图28 customer_table表数据显示图图29 provider_table表数据显示图图30 orderBook_table表数据显示图图31 sell_table表数据显示图6.2.5 设置表与表的约束(1)订单表(orderBook_table)创建外键约束。alter table orderBook_tableadd constraint FK_provider_orderBook_tableforeign key(providerName) references provider_table(providerName);(2)客户表(customer_table)创建检查约束。alter table customer_tableadd constraint chk_customer_sexCHECK(customerSex IN(男,女);(3)销售表(sell_table)创建bookId外键约束。alter table sell_tableadd constraint FK_orderBook_sell_bookId_tableforeign key(bookId) references orderBook_table(bookId);(4)销售表(sell_table)创建customerId外键约束。alter table sell_tableadd constraint FK_customer_sell_Id_tableforeign key(customerId) references customer_table(customerId);(5)销售表(sell_table)创建序列。create sequence seq_sell_tablestart with 101increment by 1;(6)查询当月书店销售额(销售总价)、营业额(销售总价-订单总价)书店(订单表orderBook_table)、销售额与营业额(销售表sell_table)。select s.sellTime as 当月,s.sellSumPrice as 销售额,(s.sellSumPrice-ob.orderSumPrice) as 营业额from orderBook_table ob,sell_table swhere ob.bookId=s.bookIdand to_char(sysdate,yyyy-mm)=to_char(s.sellTime,yyyy-mm);(7)查询某种图书库存数量。select orderCount from orderBook_table where bookName like %Web%;(8)查询当月销量最好(销售数量最高)的图书信息销量(销量表sell_table)、图书(订单表orderBook_table)。select distinct ob.bookId,ob.bookNamefrom sell_table s,orderBook_table obwhere s.bookId=ob.bookIdand EXISTS(select max(s.sellCount) from sell_table where to_char(sysdate,yyyy-mm)=to_char(s.sellTime,yyyy-mm);(9)按供应商名称查询订购信息供应商名称(供应商表provider_table)、订购(订单表orderBook_table)。select ob.bookIdfrom provider_table pt,orderBook_table obwhere viderName=viderNameand viderName=衡阳造纸厂;(10)查询购买次数超过3次的客户信息、购买(销售表sell_table)、客户(客户表customer_table)。select c.*from sell_table s,customer_table cwhere s.customerId=c.customerIdand c.customerOrderNumber3;(11)执行匿名PL/SQL块进行供应商表数据插入。begininsert into provider_table values(&providerName,&providerAddress,&providerPhone,&providerContacts)end;(12)创建视图进行查询客户表(customer_table)。create or replace view view_customer(customerId,customerName,customerAge,customerSex,customerOrderPrice,customerOrderNumber)as select customerId,customerName,customerAge,customerSex,customerOrderPrice,customerOrderNumber from customer_table wit

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论