数据库网上花店管理_第1页
数据库网上花店管理_第2页
数据库网上花店管理_第3页
数据库网上花店管理_第4页
数据库网上花店管理_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

1、数据库应用课程设计报告书网上花店设计(课题名)成 绩: 小组成员: 指导教师: 201 4 年 12 月 18 日 三峡大学 课程设计任务书2014 学年 下 学期课题名称网上花店设计指导教师姓名学号 专业数字媒体课题概述: 数据库的开发与设计是信息系统开发的重要组成部分,数据库设计的好坏直接影响到系统的开发进度和功能的实现。本课程主要应用已经学到的数据库系统和应用的知识,通过调查分析设计一个小系统的数据库,来提高学生对所学的知识和数据库开发过程的理解和掌握,提高分析问题、解决问题的能力。 设计要求:1、 进行认真、完整的系统调查分析,取得所开发系统的第一手资料。2、 每组一个课题。3、 设计

2、报告书要求详细具体,每个人对自己在本组中承担的主要任务要进行详细的说明,并按照要求的格式打印。4、 设计成果如果发现属于抄袭,一律退回,按不及格处理。主要参考资料:1、数据库基础与应用,数据库基础与应用,王珊、李盛恩。2、数据库系统概论,高等教育出版社,萨师煊、王珊编著,第四版设计成果要求:1、课程设计报告书2、设计的数据库文件及代码设计内容及进度计划安排起 止 日 期要 求 完 成 的 内 容18周周三之前完成完成资料收集,进行系统分析和调查概念结构设计、逻辑结构设计数据库物理设计、实现、约束的建立完整性、用户权限、索引、视图的设计及实现存储过程和触发器设计及实现,编写设计报告书并上交18周

3、四周五答辩目录摘要-4关键词-41需求调查、分析-4-71.1课题简介-41.2需求调查及分析-41.3数据字典-5-71.3.1数据项-5-61.3.2数据结构-61.3.3数据流-61.3.4数据存储-6-71.3.5处理过程-72概念结构设计-7-112.1局部概念结构设计-7-102.1.1花市实体属性图-72.1.2花店实体属性图-72.1.3花店采购局部-82.1.4店员实体属性图-92.1.5鲜花实体属性图-92.1.6鲜花销售局部图-102.2合并及优化全局概念结构-113逻辑结构设计-11-123.1概念结构向关系模式转换-113.2关系模式优化-11-123.3用户视图设计

4、-124数据库物理结构设计-16-274.1存取方法设计 -16-254.2存储结构设计-25-274.2.1确定系统配置-25-275.数据库完整性设计-27-325.1主键及索引-27-305.2触发器设计-30-346.数据库存储过程设计-34-367.总结-36-38摘要: 如今网上购物对于我们而言很普遍,淘宝网双十一的销售金额让我们惊讶的同时也让我们看到了电子商务的发展前景。网上花店是电子商务发展的产物,是网络技术应用的全新发展方向。网上购物顺应时代的潮流,走入了人们的日常生活,网上购物突破了传统商务的障碍,无论对消费者、企业还是市场都有着巨大的吸引力和影响力,我希望通过此次的实践课

5、程能够使我们对数据库的学习更进一步,同时也能对电子商务有所了解。关键词:网上花店系统设计 SQL Server 数据库 表 电子商务1. 需求调查、分析1.1 课题简介 随着时代的发展,人们对精神生活要求也随之提高,鲜花业从而日益壮大,为了更好的管理这个体系,建立花店管理系统是一个很好的办法。在这个学期我们开设了数据库原理这门课,本着理论联系实际的宗旨,通过学校提供的这次课程设计时间的机会,在大家的合作下,我们自行设计一套鲜花管理系统。1.2 需求调查及分析通过对一般电子商务网站功能的分析,总结电子商务网站的核心功能为:产品管理订单下达订单管理前台用户可以按商品分类浏览商品信息,找到需要的商品

6、并将其加入购物车,购买商品完成后提交购物车,系统显示出订单编号和支付方式,用户可以根据这些信息向网站汇款。管理员后台实现的功能主要是对鲜花、花店、店员和花市信息的管理,和鲜花订单的管理。包括对鲜花、花店、店员和花市信息的添加、修改以及对订单的发货处理两个模块。1.3 数据字典1.3.1 数据项1.3.2 数据结构数据结构名含义说明组成花市定义了花市的有关信息花市编号,花市名称,花市地址花店定义了花店的有关信息花店编号,花店名称,花店地址,花店电话花店采购信息表定义了花店采购的有关信息花市编号,花店编号店员定义了店员的有关信息店员编号,店员姓名,工资,花店编号鲜花定义了鲜花的有关信息鲜花名称,价

7、格,花语鲜花销售信息表定义了鲜花销售的有关信息鲜花名称,花店编号,销售额1.3.3 数据流柜台销售鲜花花店对鲜花进行标价处理到花市采购鲜花1.3.4 数据存储花市编号,花市名称,花市地址,花店编号,花店名称,花店地址,花店电话,店员编号,店员姓名,工资,鲜花名称,价格,花语,销售额1.3.5 处理过程首先花市编号,花市名称,花市地址,花店编号,花店名称,花店地址,花店电话,店员编号,店员姓名,鲜花名称,花语都要提前输入并且初始化。在市场采购鲜花后,对鲜花的价格进行录入,若进购新品种了,则鲜花名称,花语都要进行录入。店员工资根本销售量来进行计算,销售额根据销售情况来改变。若增加新的花市,则要录入

8、新花市的编号,名称,地址。2 概念结构设计2.1 局部概念结构设计2.1.1 花市实体属性图2.1.2 花店实体属性图2.1.3 花店采购局部2.1.4 店员实体属性图2.1.5 鲜花实体属性图2.1.6鲜花销售局部图2.2 合并及优化全局概念结构3 逻辑结构设计3.1 概念结构向关系模式转换花市(花市编号,花市名称,花市地址)花店(花店编号,花点名称,花店地址,花店电话)花店采购信息表(花市编号,花店编号)店员(店员编号,店员姓名,工资,花店编号)鲜花(鲜花名称,价格,花语)鲜花销售信息表(鲜花名称,花店编号,销售额)3.2 关系模式优化1、 确定数据依赖花市(花市编号,花市名称,花市地址)

9、根据这个关系写出数据依赖花市编号花市名称,花市编号花市地址花店(花店编号,花店名称,花店地址,花店电话)花店编号花店名称,花店编号花店地址,花店编号花店电话店员(店员编号,店员姓名,工资,花店编号)店员编号店员姓名,店员编号工资,店员编号花店编号鲜花(鲜花名称,价格,花语)鲜花名称价格,鲜花名称花语鲜花销售(鲜花名称,花店编号,销售额)(鲜花名称,花店编号)销售额2、对各关系模式间数据依赖进行极小化处理,消除冗余花市编号花市名称,花市编号花市地址,花店编号花店名称,花店编号花店地址,花店编号花店电话,店员编号店员姓名,店员编号工资,店员编号花店编号,鲜花名称价格,鲜花名称花语,(鲜花名称,花店

10、编号)销售额3、 最终分解成第三范式:(花市编号,花市名称,花市地址)(花店编号,花店名称,花店地址,花店电话)(店员编号,店员姓名,工资,花店编号)(鲜花名称,价格,花语)(鲜花名称,花店编号,销售额)3.3 用户视图设计4 数据库物理结构设计物理设计主要是指把逻辑设计当中的关系模式图在数据库中以基本表的形式建立出来。本系统涉及到的表如下:数据库的建立代码:create datebase fson(name=flowershop,size=3,filename=d:flo.mbf)log on(name=flowershop_log,size=1, filename=d:flo_log.ld

11、f)表的建立:flower表:create table flower(name char(20) primary key,price float ,flowerlanguage char(20);flowermarket表:create table flowermarket(marketno char(10) primary key,marketname char(20) ,marketadd char(50) );flowershop表:create table flowershop(shopno char(10) primary key,shopname char(20),shoptell

12、 char(20),shopadd char(50);salesman表:create table salesman(salesmanno char(10) primary key,salesmanname char(20),wage float,shopno char(10),foreign key(shopno) references flowershop(shopno);huadianxiaoshou表:create table huadianxiaoshou(shopno char(10),name char(20),xiaoshoue int,primary key(shopno,n

13、ame),foreign key(shopno) references flowershop(shopno),foreign key(name) references flower(name);huadianxiaoshou表:create table huadianxiaoshou(marketno char(10),shopno char(10),primary key (marketno,shopno),foreign key(marketno) references flowermarket(marketno),foreign key(shopno) references flower

14、shop(shopno);视图的建立:在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表。salesa视图:create view salesaasSELECT dbo.salesman.salesmanno AS 店员编号, dbo.salesman.salesmanname AS 店员名, dbo.salesman.wage AS 工资, dbo.flowershop.shopname AS 所属花店FROM dbo.flowershop,dbo.salesman ON dbo.flowershop.shopno = dbo.salesman.shopnoWHERE (dbo.s

15、alesman.shopno = 'HB09')xiaoshou视图:create view xiaoshouasSELECT dbo.huadianxiaoshou.shopno, dbo.flowershop.shopname, AS flowername, dbo.huadianxiaoshou.xiaoshoueFROM dbo.flowershop,dbo.huadianxiaoshou ON dbo.flowershop.shopno = dbo.huadianxiaoshou.shopnoWHERE (dbo.hu

16、adianxiaoshou.shopno = 'HB06')xiaoshoua视图:create view xiaoshouaasSELECT dbo.huadianxiaoshou.shopno, dbo.flowershop.shopname, AS flowername, dbo.huadianxiaoshou.xiaoshoueFROM dbo.flowershop,dbo.huadianxiaoshou ON dbo.flowershop.shopno = dbo.huadianxiaoshou.shopnoWHERE

17、 (dbo.huadianxiaoshou.shopno = 'HB05')xiaoshoub视图:create view xiaoshoubasSELECT dbo.huadianxiaoshou.shopno, dbo.flowershop.shopname, AS flowername, dbo.huadianxiaoshou.xiaoshoueFROM dbo.flowershop,dbo.huadianxiaoshou ON dbo.flowershop.shopno = dbo.huadianxiaoshou.sho

18、pnoWHERE (dbo.huadianxiaoshou.shopno = 'HB09')4.1 存取方法设计 参数及表的建立:Flower表: Flowermarket表:Floweshops表:Huadiancaigou表:Huadianxiaoshou表:Salesman表:数据库表的设计:(表的截图)花的信息表截图:花市信息表截图:花店信息表截图:花店采购信息表截图:花店销售信息表截图:店员信息表截图:编号为HB05的花店的店员信息视图截图:编号为HB06的花店的销售信息截图:编号为HB05的花店的销售信息截图:编号为HB09的花店的销售信息截图:数据库的测试:数据的

19、插入:insert into dbo.flowermarket(marketno,marketname,marketadd)values ('HS06','啦啦花市','西陵区7号')数据的删除:delete from dbo.huadianxiaoshouwhere shopno='HB05' and name='百合'数据的更新:update dbo.salesmanset wage=2500where salesmanno=1;4.2 存储结构设计4.2.1 确定系统配置数据库应用的硬件,软件环境介绍:软件环

20、境是一个系统开发的工具,它取决于开发人员对软件的熟悉程度,如果开发人员选择一个不熟悉的软件开发会大大增加开发系统所需要投入的成本,所以说选择软件是很重要的。本实验用到的是SQL2008,安装它对硬件,软件的要求如下:项目要求说明CPU处理器类型:Pentium兼容处理器或速度更快的处理器;处理器速度:最低:1.0GHz最高:2.0GHz或更快内存最小512MB建议2GB或更大硬盘根据组件的不同,需要的硬盘空间进行变化,建议2.2GB以上硬盘空间显示器分辨率1024*768像素以上操作系统Windows Server2003 Service Pack 2Windows Server2008Win

21、dows Server2008 R2可以安装到64位服务器的Windows on Windows(WOW64)32位子系统中项目要求说明需要的框架NET Framework 3.5 SPISQL Server Native ClientSQL Server安装程序支持文件需要的软件Microsoft Windows Installer 4.5或更高版本Microsoft Internet Explorer 6 SPI或更高版本网络协议Shared memory(客户端连接本机SQL Server 实例时使用)Named PipesTCP/IPVIA系统的视图界面:5 数据库完整性设计5.1 主

22、键及索引我们所做的数据库中所用的是非唯一性索引,以下是主键与索引还有唯一性索引的理解:  其实指定列的索引就相当于对指定的列进行排序,排序有利于对该列的查询,可以大大增加查询效率。(那么可能有人认为应该对所有的列排序,这样就可以增加整个数据库的查询效率?这样的想法是错误的,原因是建立索引也是要消耗系统资源的,给每个表里的每个列都建立索引那么将对系统造成极大的负担,那就更别提效率了!)简单的说建立一个列的索引,就相当与建立一个列的排序。 主键其实就是一个索引,但是这个索引跟一般的索引有所不同,不同在于主键所在的列里的每一个的记录都是唯一的,也可以说不能在主键里出现相同的记录,在同一个表

23、里只能有一个主键。(主键等于索引,索引不一定等于主键)简单的说主键就是所在列不能出现相同记录的特殊索引,而且这个索引只能在表里出现一次。 1.主键一定是唯一性索引,唯一性索引并不一定就是主键;  2.一个表中可以有多个唯一性索引,但只能有一个主键;  3.主键列不允许空值,而唯一性索引列允许空值。  主键在表中有唯一标识的作用,不可重复,不能为空; 当其它表建立外键关联当前表时,只可以关联主键。  唯一索引,确切的说是唯一约束,    create unique index index_id on(id)

24、; 是用来限制当前表插入时建立唯一约束的字段不可重复。 一个是做为唯一标识,先唯一后标识;   另一个是插入时做唯一限制。    主键:flower表:flowermarket表:flowershop表:huadiancaigou表:huadianxiaoshou表:salesman表:索引的建立:(先给出索引的相关定义,然后自己选择表或属性建立索引,及其相关SQL语句)工资高于2500的店员的索引:CREATE index 工资高于2500的店员on dbo.salesman(wage asc)where wage>

25、=2500;编号为HB09的花店销售信息的索引:create index 编号为HB09的花店销售信息on dbo.huadianxiaoshou(xiaoshoue asc)where shopno='HB09'5.2 触发器设计触发器对表进行插入、更新、删除的时候会自动执行的特殊存储过程。触发器一般用在check约束(CHECK 约束用于限制列中的值的范围。如果对单个列定义 CHECK 约束,那么该列只允许特定的值。如果对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制。)更加复杂的约束上面。触发器和普通的存储过程的区别是:触发器是当对某一个表进行操作。诸

26、如:update、insert、delete这些操作的时候,系统会自动调用执行该表上对应的触发器。 触发器有两个特殊的表:插入表(instered表)和删除表(deleted表)。这两张是逻辑表也是虚表。有系统在内存中创建者两张表,不会存储在数据库中。而且两张表的都是只读的,只能读取数据而不能修改数据。这两张表的结果总是与被改触发器应用的表的结构相同。当触发器完成工作后,这两张表就会被删除。Inserted表的数据是插入或是修改后的数据,而deleted表的数据是更新前的或是删除的数据。 Update数据的时候就是先删除表记录,然后增加一条记录。这样在inserted和deleted表就都有u

27、pdate后的数据记录了。注意的是:触发器本身就是一个事务,所以在触发器里面可以对修改数据进行一些特殊的检查。如果不满足可以利用事务回滚,撤销操作。 鲜花插入的触发器:create trigger insert_鲜花on dbo.flowerfor insertasif exists(select price from dbo.flower where price<0)begindelete from dbo.flower where price<0print '新插入的记录不符合要求已被删除'end测试语句:insert into dbo.flower(name,

28、price,flowerlanguage)values('兰花',-3,'dyt') 结果见图:更新花市信息的触发器:create trigger message1 on dbo.flowermarketfor insertasraiserror('你更新了数据',10,1)测试语句:insert into dbo.flowermarket(marketno,marketname,marketadd)values ('HS06','啦啦花市','西陵区7号') 结果见图:删除店员的触发器:creat

29、e trigger 删除店员on dbo.salesmanfor deleteasif exists(select salesmanname from dbo.salesman where salesmanname='李阳')begindelete from dbo.salesman where salesmanname='李阳'print '名为李阳的店员信息已被删除'endelsebegin print '没有名为李阳的店员信息'end测试语句:delete from dbo.salesmanwhere salesmannam

30、e='李阳' 结果见图:6 数据库存储过程设计存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行。 由于存储过程在创建时即在数据库服务器上进行了编译并存储在数据库中,所以存储过程运行要比单个的SQL语句块要快。同时由于在调用时只需用提供存储过程名和必要的参数信息,所以在一定程度上也可以减少网络流量、简单网络负担。 存储过程代码:计算编号为HB05的花店的销量的存储过程:create procedure 计算花店销量zonge float outputasselect zonge=sum(xiaos

31、houe) from dbo.huadianxiaoshou where shopno='HB05' godeclare zonge floatexecute 计算花店销量 zonge outputselect zonge as '编号为HB05的花店的当前销售总量'go编号为HB05的花店的当前销售总量存储过程截图:计算花名为水仙的鲜花销量的存储过程:create procedure 计算鲜花销量zonge float outputasselect zonge=sum(xiaoshoue) from dbo.huadianxiaoshou where name

32、='水仙' godeclare zonge floatexecute 计算鲜花销量 zonge outputselect zonge as '花名为水仙的花的销售总量'go花名为水仙的花的销售总量存储过程截图:计算单价超过10元的鲜花数的存储过程:create procedure 计算单价超过10元的鲜花数zonge float outputasselect zonge=count(*) from dbo.flower where price>=10godeclare zonge floatexecute 计算单价超过10元的鲜花数 zonge outpu

33、tselect zonge as '单价超过10元的鲜花数'go单价超过10元的鲜花数存储过程截图:7 总结骆晓芳的总结:通过这次的上机实验,在学习课本和上机实践中一步一步了解数据库,慢慢地学会了如何创建一个数据库以及如何创建表、查询、等。 了解了利用数据库可以达到对数据的处理、分析,从而使其更方便的为我们所使用,并从中获得有价值的信息。 在翻阅书籍,上网查找资料还有与组员讨论的过程中,我们从对数据库的一无所知逐步学习到可以建立一个数据库。在空的数据库里创建表,并且可以用几种不同的创建方法。完成了表的创建、查询的几种类型,知道了它们的功能和类型。按照老师的要求,比较顺利的完成了布置的任务。 通过这次实践课程,我了解到了实践的重要性。只有亲自动手去做才能发现自己的不足,才能去身临其境的分析问题,最终才能尝试到解决问题的喜悦之情。知识只学不做就是死的,只有去实践把它真正变为自己的,这样才算是真正的学到,才能真正的学会,才能真正的学好!吴为的总结:通过做本次数据库的课程设计,我又回顾了一

温馨提示

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

评论

0/150

提交评论