武汉理工大学华夏学院课程设计课程名称数据库原理课程设计题目网上购物子系统数据库设计学号班级计算机1111姓名成绩指导教师刘春燕2014年6月3日至2014年6月6日1课程设计任务书设计题目:网上购物子系统数据库设计设计目的:1.学会分析研究数据对象的特性;2.学会数据的组织方法;3.选择合适的数据的存储结构以及相应操作,把现实世界中的问题转换为计算机内部的表示和处理;4.提高学生的运用能力、提高数据库设计素质;设计任务:(在规定的时间内完成下列任务)1.会员管理:用户申请成为会员,记录会员的详细资料(包括会员编号、会员姓名、会员地址等),方便货物的邮寄。2.商品信息管理:维护商品信息(包括商品编号、商品名称、价格、简介、图片等信息)。会员可以查看商品信息。3.购物车管理:用户可以将商品放入自己的购物车(包括购物车编号、商品编号、商品数量等),可以在购物车中添加或删除商品。4.订单查询:会员可以查找自己的所有订单信息5.商品查找:输入要查询的商品名称可以查询商品的详细信息。6.商品分类:对商品分类(包括分类编号、分类名称等),使用户可以在某类商品列表中查看该类所有的商品。具体要完成的任务是:A.编制完成上述问题的数据库设计并能得出正确的运行结果。B.采取统一格式:有问题描述、基本要求、测试数据及实现方法等组成写出规范的课程设计说明书;时间安排6月3日布置课程设计任务;6月4日分配题目后,查阅资料、准备程序;6月5日上机调试程序、书写课程设计报告;6月6日下午提交课程设计报告及相关文档具体要求课程设计报告按统一通用格式书写,具体格式要求请在网络上查阅;每位学生应独立完成各自的任务;指导教师签名:14年5月28日教研室主任(或责任教师)签名:14年5月28日2目录1问题描述………………………………………………………………………………………31.1背景…………………………………………………………………………………………31.2数据需求………………………………………………….…………………………………31.3事物需求………………………………………………….…………………………………32概念结构设计……………………………………………………………………………………32.1具体信息实体E-R图………………………………………………………………………42.2总的信息实体E-R图………………………………………………………………………53逻辑结构设计…………………………………………………………………………………63.1关系模型……………………………………………………………………………………63.2数据模型优化………………………………………………………………………………63.3关系图………………………………………………………………………………………64物理结构设计……………………………………………………………………………………74.1数据字典……………………………………………………………………………………74.2数据库的建立………………………………………………….……………………………84.2.1member表的建立…………………………………………….……………………………84.2.2goods表的建立……………………………………………….……………………………84.2.3goods_car表的建立………………………………………………………………………84.2.4buy表的建立………………………………………………………………………………94.3数据初始化……………………………………………………….…………………………94.3.1将会员信息插入到member表中…………………………………………………………94.3.2将商品信息插入到goods表中………………………………….………………………94.3.3将购物车信息插入到goods_car表中…………………………………………………104.3.4将购买信息插入到buy表中……………………………………….……………………105结果数据处理…………………………………………………………………………………115.1单表查询…………………………………………………………….……………………115.2会员查看商品信息……………………………………………….………………………135.3在购物车中添加或删除数据……………………………………….……………………135.4会员查找自己的所有订单信息………………………………….………………………145.5商品查询(根据商品名称)………………………………….…………………………155.6根据分类名称查找某一类商品下的所有商品…………………………………………155.7额外信息查询………………………………………………………………………………166总结与心得……………………………………………………………………………………197参考文献………………………………………………………………………………………1931问题描述1.1背景随着现代科技的飞速发展,进行网上购物的人越来越多,网上商城和我们现实世界当中的商店一样,差别是利用电子商务的各种手段,达到从买到卖的过程,减少中间环节,消除运输成本和代理中间的差价,造就了普通消费,加大了市场流通带来了巨大的消费空间。它需要强大的数据库作支撑,通过对数据库的学习,本着理论结合实践的宗旨,在学校提供的这次网上购物子系统的实践的机会和老师的初步指导下,针对网上购物,我自行设计了这个网上购物数据库子系统。1.2数据需求(1)会员信息:会员信息包括会员编号、会员姓名、会员性别、会员电话、会员地址。(2)商品信息:商品信息包括商品编号、商品名称、价格、简介、分类编号、分类名称。(3)购物车信息:购物车信息包括购物车编号、商品编号、商品数量。(4)购买信息:购买信息包括会员编号,会员姓名,商品编号,商品名称,商品数量1.3事物需求网店必须有以下基本功能①用户注册用户必须先注册,才能进行购买。在注册时需要填写会员姓名、会员性别、会员电话、会员地址。②网上购物会员可以查看商品的信息,例如:商品编号,商品名称,价格,简介,分类编号,分类名称。在购物车中添加或删除商品,例如:添加商品编号和商品数量,删除商品编号和商品数量。会员可以查询自己的所有订单信息,例如:查询自己所买的商品编号,商品名称,价格,简介,分类编号,分类名称,商品数量。输入要查询的商品名称可以查询对应商品的详细信息,例如:输入毛巾,查询毛巾对应的信息。根据商品的分类,查询出该类所有的商品,例如:根据分类名称,查询该类下的所有物品。2.概念结构设计2.1具体信息实体E-R图4(1)会员实体E-R图图2-1会员实体E-R图(2)商品实体E-R图图2-2商品实体E-R图会员会员编号会员姓名会员性别会员电话会员地址商品商品编号商品名称价格简介图片分类编号分类名称5(3)购物车实体E-R图图2-3购物车实体E-R图2.2总的信息实体E-R图图2-4总的信息实体E-R图会员商品购物车购买添加商品数量nnn购物车购物车编号商品编号商品数量n63逻辑结构设计3.1关系模型根据E-R图和具体分析可以得出如下关系模式:会员(会员编号、会员姓名、会员性别、会员电话、会员地址)商品(商品编号、商品名称、价格、简介、图片、分类编号、分类名称)购物车(购物车编号、商品编号、商品数量)购买(会员编号、商品编号、会员姓名、商品名称、商品数量)注明:“”表示主码,“”表示外码3.2数据模型优化将商品表拆分为两张表,一张表为商品表(商品编号、商品名称、价格、简介),另一张表为商品分类表(商品名称、分类编号、分类名称)。3.3关系图根据建立的表与表之间存在的联系,生成了如下图所示的关系图:图3-1关系图74.物理结构设计4.1数据字典表4-1member会员信息表表中列名数据类型是否为空会员编号char(30)notnull(主键)会员姓名char(20)notnull会员性别nchar(1)null会员电话char(20)null会员地址char(20)null表4-2goods商品信息表表中列名数据类型是否为空商品编号char(20)notnull(主键)商品名称char(20)notnull价格floatnotnull简介char(30)notnull分类编号char(20)notnull分类名称char(20)notnull表4-3goods_car购物车信息表表中列名数据类型是否为空购物车编号char(20)notnull(主键)商品编号char(20)null商品数量char(20)null表4-4buy购买信息表表中列名数据类型是否为空会员编号char(30)notnull(主键)会员姓名char(20)notnull商品编号char(20)notnull(主键)商品名称char(20)notnull商品数量intnull84.2数据库建立createdatabaseshoppingon(name='shopping_data',filename='e:\sql\shopping.mdf',size=5MB,maxsize=50MB,filegrowth=10%)logon(name='shoppig_data',Filename='e:\sql\shopping_data.ldf',size=2MB,maxsize=5MB,filegrowth=1MB)go4.2.1member表的建立//member表的建立createtablemember(会员编号char(30)primarykey,会员姓名char(20)notnull,会员性别nchar(1),会员电话char(20),会员地址char(20))4.2.2goods表的建立//goods表的建立createtablegoods(商品编号char(20)primarykey,商品名称char(20)notnull,价格floatnotnull,简介char(30)notnull,分类编号char(20)notnull,分类名称char(20)notnull)4.2.3goods_car表的建立//goods_car表的建立createtablegoods_car(购物车编号char(20)primarykey,商品编号char(20),9商品数量int,foreignkey(商品编号)referencesgoods(商品编号))4.2.4buy表的建立//buy表的建立createtablebuy(会员编号char(30),会员姓名char(20)notnull,商品编号char(20),商品名称char(20)notnull,商品数量int,primarykey(会员编号,商品编号),foreignkey(会员编号)referencesmember(会员编号),foreignkey(商品编号)referencesgoods(商品编号))4.3数据初始化4.3.1将会员信息插入到member表中//将会员信息插入到member表中insertintomember(会员编号,会员姓名,会员性别,会员电话,会员地址)values('0001','张八一','男','10210411113','湖北省云梦县')insertintomember(会员编号,会员姓名,会员性别,会员电话,会员地址)values('0002','林文俊','男','10210411102','湖北省武汉市')insertintomember(会员编号,会员姓名,会员性别,会员电话,会员地址)values('0003','黄开兵','男','10210411107','湖北省十堰市')insertintomember(会员编号,会员姓名,会员性别,会员电话,会员地址)values('0004','胡明','女','10210411133','湖北省仙桃市')insertintomembe