外卖订餐商务网站数据库设计与实现.doc_第1页
外卖订餐商务网站数据库设计与实现.doc_第2页
外卖订餐商务网站数据库设计与实现.doc_第3页
外卖订餐商务网站数据库设计与实现.doc_第4页
外卖订餐商务网站数据库设计与实现.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

学 号20121017822.武汉科技大学城市学院课程设计 报 告 课程名称 数据库应用课程设计 题 目 外卖订餐商务网站数据库设计与实现 院 系 信息工程学部 专 业 电子商务 班 级 2012级电子商务 学 号 20121017822. 姓 名 指导教师 刘永真 目录1 概述12.数据库概念结构设计12.1表的结构12.2表的e-r图结构33.创建数据库和表53.1数据库创建的代码:53.2.1表的结构:53.2.2 创建表的代码:63.3 完整性设计73.4 索引设计74.插入表中的数据84.1表数据插入的代码84.2插入后效果105.数据库的查询和视图115.1实现查询115.2视图的设计146.存储过程157.实验总结181 概述外卖是我们生活中必不可少的一部分,但是,很多外卖经营店往往会忽略管理系统的重要性。而本外卖点单管理系统集成了点单,订单号、外送时间,地点,金额等一系列功能,每一个环节分工明确,界面简洁明了,可视化程度高,有效地缩减了人为出错的概率。本管理系统实现了一体化的管理,使得外卖的点单更加迅捷。2.数据库概念结构设计2.1表的结构第 19 页 共 21 页表的结构客户信息表订单详情表商家菜品表客户编号寝室楼栋姓名寝室房间号电话号码备注订单编号下单时间总金额菜品编号菜名描述价格送餐员工表员工编号员工姓名员工电话号员工身份证号数量图2.1 e-r图2.2表的e-r图结构顾客订单菜式下订单订购1nmn配送配送员n1图2.2实体关系图客户信息表地址姓名电话号备注客户编号图2.3客户属性图配送员编号订单编号下单时间订单信息表客户编号图2.4订单表属性菜品编号订单号订单详情表总金额数量图2.5订单详情菜品编号价格商家菜品表菜名描述图2.6商家菜品属性员工手机号配送员编号员工姓名配送员信息表员工身份证号图2.7员工信息属性3.创建数据库和表3.1数据库创建的代码:create database wmscon(name=wm_data,filename=e:wm_data.mdf,size=10mb,maxsize=50mb,filegrowth=5%)log on (name=wm_log,filename=e:wm_log.ldf,size=2mb,maxsize=5mb,filegrowth=1mb)3.2.1表的结构:(一)客户信息表列名数据类型长度是否为空说明客户编号char8no主码姓名char8no电话号char13no地址char10no备注varchar16(二)配送员信息表列名数据类型长度是否为空说明配送员编号char10no主码员工姓名char10no员工手机号char20no员工身份证号char30no(三)商家菜品表列名数据类型长度是否为空说明菜品编号char10no主码菜名char15no数量intno价格moneyno描述varchar30(四)订单信息表列名数据类型长度是否为空说明订单编号char10no主码客户编号char10no外码配送员编号char10no下单时间getdate系统默认no(五)订单详情表列名数据类型长度是否为空说明订单编号char10no组合关键字(来自其他两表的外键)菜品编号char10no总金额moneyno3.2.2 创建表的代码:create table 客户信息表(客户编号char(10) not null primary key,姓名char(8) not null,电话号char(13) not null,地址char(10) not null,备注char(16) not null,)create table 配送员信息表(配送员编号char(10) not null primary key,员工姓名char(10) not null,员工手机号char(20) not null,员工身份证号char(30) not null,)create table 商家菜品表(菜品编号char(10) not null primary key,菜名char(10) not null,价格money not null, 描述 varchar(30))create table 订单信息表( 订单编号char(10)not null primary key,客户编号char(8) not null ,配送员编号char(10) not null , 下单时间datetime default( getdate() not null, foreign key(客户编号) references 客户信息表(客户编号), foreign key(配送员编号) references 配送员信息表(配送员编号)create table 订单详情表( 订单编号char(10)not null ,菜品编号char(10) not null ,数量int not null,总金额money not null , primary key(订单编号,菜品编号), foreign key(订单编号) references 订单信息表(订单编号), foreign key(菜品编号) references 商家菜品表(菜品编号)图3.1 所有表成功创建3.3 完整性设计在设计过程中“客户信息表”其中“客户编号”为主码;“配送员信息表”中“配送员编号”为主码;“商家菜品表”表中“菜品编号”为主码;“订单信息表”中“订单表”为主码;“订单详情表”中“订单编号”“菜品编号”为组合主键,满足了实体完整性要求。表中的每一列都对输入的数据为not null 和null进行了区分,以及定义了defaul默认时间,满足域完整性。“订单信息表”中“客户编号”“配送员编号”为外码,“订单详情表”中“菜品编号”“订单编号”为外码,满足参照完整性。再输入过程中满足用户定义完整性。3.4 索引设计在“客户信息表”中根据主码创建索引名为“pk_订单信息表_03317e3d”的聚集索引,在“配送员信息表” 中根据主码创建索引名为“pk_配送员信息表_7b905c75”的聚集升序索引,“商家菜品表”中创建“pk_商家菜品表_7d78a4e7”的聚集升序索引,“订单详情表中”创建了“pk_订单详情表_07f6335a”的聚集升序索引,“订单信息表”中创建“pk_订单信息表_03317e3d”的聚集升序索引。图3.1索引4.插入表中的数据4.1表数据插入的代码1.客户信息表代码:insert into 客户信息表(客户编号,姓名,电话号,地址,备注)values(101,李华北七401,)values(102,李明北七402,)values(103,小朱北七403,)values(104,张力北七404,)values(105,张雪北七405,)values(106,张帆北七406,)values(107,李文北七407,)values(108,刘明北七408,)values(109,陈翔北七409,)values(110,吴磊北七410,)2.配送员信息表:insert into 配送员信息表values(201,姜雪alues(202,蒋丽alues(203,李江alues(204,张飞alues(205,李龙alues(206,王虎alues(207,刘达alues(208,钟飞alues(209,张浩alues(210,李萌,153956455623.商家菜品表:insert into 商家菜品表values(301,鱼香肉丝,8,鱼香)values(302,鱼香茄子,8,茄子)values(303,肉丝,8,肉)values(304,酸辣肉丝,8,酸辣)values(305,藕丁,8,藕)values(306,麻辣香锅,8,麻辣)values(307,宫保鸡丁,8,鸡肉黄瓜)values(308,红烧鱼,8,红)values(309,干锅豆腐,8,干锅)values(310,青菜炒肉,8,青菜)4.订单信息表:insert into 订单信息表values(401,101,201,)values(402,102,202,)values(403,103,203,)values(404,104,204,)values(405,105,205,)values(406,106,206,)values(407,107,207,)values(408,108,208,)values(409,109,209,)values(410,110,210,)5.订单详情表:insert into 订单详情表values(401,301,2,16)values(402,302,3,24)values(403,303,4,32)values(404,304,1,8)values(405,305,1,8)values(406,306,1,8)values(407,307,1,8)values(408,308,1,8)values(409,309,1,8)values(410,310,1,8)4.2插入后效果图4.1客户信息表图4.2配送员信息表图4.3商家菜品表图4.4订单信息表图4.5订单详情表5.数据库的查询和视图5.1实现查询查询命令1:根据用户名查找用户购买记录语句:select dbo.客户信息表.客户编号, 姓名,dbo.商家菜品表.菜品编号,菜名,价格,dbo.订单详情表.订单编号,数量,总金额from 客户信息表,订单详情表,订单信息表,商家菜品表where客户信息表.客户编号=订单信息表.客户编号and 订单详情表.订单编号=订单信息表.订单编号and 订单详情表.菜品编号=商家菜品表.菜品编号图5.1查找用户购买记录查询命令2:任意关键字搜索产品语句:select * from dbo.商家菜品表where 菜名like %鱼% or 菜名like %肉% or 描述like %肉% or 菜名like %辣% or 描述like %青菜%or 菜名like %藕%or 菜名like %豆腐or 描述like %鸡%图5.2任意关键字搜索产品查询命令3:销量统计前三名语句:select top 3 * from 订单详情表order by 数量 desc图5.3销量统计前三名查询命令4:分类统计产品销量语句:select 数量from 订单详情表group by 数量图5.4分类统计产品销量查询命令5:根据订单号管理配送员信息语句:select 订单信息表.订单编号,配送员信息表.配送员编号,员工姓名,员工手机号,员工身份证号from 配送员信息表,订单信息表where 订单信息表.配送员编号=配送员信息表.配送员编号图5.5根据订单号管理配送员信息5.2视图的设计1.所有产品和订单联系起来。语句:create view dbo.view_1as select 订单信息表.订单编号, 订单详情表.菜品编号, 订单详情表.数量, 订单详情表.总金额, 订单信息表.配送员编号, 商家菜品表.菜名from 订单信息表inner join 订单详情表on 订单信息表.订单编号= 订单详情表.订单编号inner join 商家菜品表on 订单详情表.菜品编号= 商家菜品表.菜品编号 5.6所有产品和订单联系起来视图2.用户.产品.订单联系视图。语句:create view dbo.view_2asselect 客户信息表.客户编号, 客户信息表.姓名, 商家菜品表.菜品编号, 商家菜品表.菜名, 订单详情表.订单编号, 订单详情表.总金额, 订单详情表.数量, 订单信息表.配送员编号from 订单信息表 inner join 客户信息表on 订单信息表.客户编号= 客户信息表.客户编号inner join 订单详情表on 订单信息表.订单编号= 订单详情表.订单编号inner join 商家菜品表on 订单详情表.菜品编号= 商家菜品表.菜品编号图5.7用户.产品.订单联系视图6.存储过程1.存储过程:根据用户查找记录:create procedure chaxunasselect dbo.客户信息表.客户编号, 姓名,dbo.商家菜品表.菜品编号,菜名,价格,dbo.订单详情表.订单编号,数量,总金额from 客户信息表,订单详情表,订单信息表,商家菜品表where客户信息表.客户编号=订单信息表.客户编号and 订单详情表.订单编号=订单信息表.订单编号and 订单详情表.菜品编号=商家菜品表.菜品编号图6.1根据用户查找记录的存储:2存储过程:根据任意关键字搜索产品示例:语句:create procedure adcasselect * from dbo.商家菜品表where 菜名like %鱼% or 菜名like %肉% or 描述like %肉% or 菜名like %辣% or 描述like %青菜%or 菜名like %藕%or 菜名like %豆腐or 描述like %鸡%图6.2根据任意关键字搜索产品示例3. 存储过程:根据订单号管理配送员信息语句:select 订单信息表.订单编号,配送员信息表.配送员编号,员工姓名,员工手机号,员工身份证号from 配送员信息表,订单信息表where 订单信息表.配送员编号=配送员信息表.配送员编号6.3根据订单号管理配送员信息7.实验总结实践出真知。这句话说得一点也没错,在整个数据库课程设计过程中,只有实践才能对事物的本质有更深的认识,才能有发言权,一切认识都是建立在认识的基础上。通过了一个星期的数据课程设计,我对数据库这门课程有了更深的认识,对原本在我脑中像是火星语的sql语言有了更加具体的认识。数据库课程设计加深了我对数据库这门课程的兴趣,让我深刻了解了数据库的强大功能,引起我对研究sql语言运用规则的兴趣。数据库概念设计、数据库逻辑结构设计和数据库保护设计是数据库设计的重要步骤,每一步的设计都是至关重要的,并且是相互联系的。经过一个星期的课程设计,让我对e-r图的设计有一个整体的想法,并且对逻辑结构设计中关键字的设定能够很好的把握,分析每个表中的联系,更加注意表间和数据之间的相互约束。数据库课程设计不仅让我更进一步了

温馨提示

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

评论

0/150

提交评论