资源描述
数据库技术与应用
课程设计报告
学 部:
计算机学部
专业名称:
计算机科学与技术
班 级:
计科0901
设计题目:
网络商城管理系统
学生姓名:
彭果 李井军
指导教师:
李军
时 间:
2011—12—21
分 数:
网络商城管理系统 摘要
摘要
随着IT产业和Internet获得了飞速发展,计算机应用已渗透到了各个领域,网络化的迅速普及以及它的强大功能,在广阔的Internet网络中有各种各样的电子商城,它可以让我们足不出户借助网络轻轻的点击鼠标即可以实现购物、查询商品以及相关信息.网上购物也已经成为一种主流。
网上商城不需要商店的租赁费,新的商品可以以最快的速度吸引到顾客的眼球。网上商城为商家节约了大量的运输费用,场地租赁费等额外成本,同时也为顾客带来了无穷的方便性,因为顾客不再需要出门便可以购买到自己想要的商品.廉价的网络资源成本使得网络商城成本低廉,庞大的互联网络带来了无限的市场,给商家和买家带来了庞大的利益和无限的需求.
本文采用自上而下地总体规划,自下而上地应用开发的策略开发一个网络购物商城的过程.通过后台的管理能够更加方便地管理整个商城的运转,省去了一大笔人力以及物力。文中详细介绍了整个商城管理系统的开发流程,包括可行性分析、需求分析、概念设计、逻辑结构设计、物理设计以及后期的运行与维护等等。系统采用MVC设计模式,使用当前最流行的Struts2+Spring3+Hibernate框架进行开发,在前台用JSP页面进行开发和管理用户界面,利用轻巧的JavaScript库-jQuery处理页面的JavaScript脚本,使开发更加的高效、提示信息更加的完善、界面更加友好,并且有较强的亲和力.
关键词:购物;网络商城;商品;数据库
网络商城管理系统 目录
目录
第一章可行性分析1
1。1引言1
1。1.1编写目的1
1.1.2项目背景1
1。2 可行性研究的前提2
1。2.1条件假定和限制2
1.3 技术可行性分析2
1。3。1技术的支持能力2
1。3。2技术的优势2
1.3。3技术的难点3
1.4 经济可行性分析3
1。4。1投资3
1.4.2效益3
1。5 社会可行性分析4
1。5.1法律因素4
1.5.2用户可行性4
1.6 结论意见4
第二章需求分析5
2。1 概述5
2。1。1 编写目的5
2。1。2 项目范围5
2。1。3 运行环境5
2。2 需求分析5
2。2。1 功能划分5
2。2。2 功能需求6
2.3 数据流图6
2。3。1 系统顶层图6
2。3。2 一层分解图7
2。3.3 二层分解图8
2.4 数据字典10
2。4.1数据流条目10
2。4.2 数据项条目12
2。4。3 加工条目13
第三章概念设计15
3。1实体之间的联系15
3。2 E—R图15
3.2.1 局部E—R图15
3。2。2 系统全局E-R图17
第四章逻辑结构设计18
4。1 关系模型的设计依据18
4.1 实体间联系转化的关系模式18
4。2 关系模型的优化20
4。2.1 确定范式级别20
4。2。2 实施规范化处理20
第五章物理结构设计21
5。1 创建数据库及数据表21
5。2 数据的存放位置设计23
第六章运行与维护24
6.1 项目运行界面24
6。2 数据库初始化代码31
6。3 项目架构图示39
总结40
参考文献41
网络商城管理系统 第一章 可行性分析
第一章 可行性分析
1。1引言
1。1。1编写目的
可行性研究的目的是用最小的代价在尽可能短的时间内确定该数据库系统是否可能开发,是否值得开发,是否可以开发.
经过对此项目进行详细的调查研究,初拟系统现实报告,对软件开发只不过将要面临的问题及其解决方案进行初步设计及合理安排。明确开发风险及其所带来的经济效益。
1。1。2项目背景
本项目作为《数据库设计与应用》课程的实习项目提出,希望通过网上商城信息系统的分析与设计,切实领会系统分析、系统设计和实施各个阶段的要点;掌握基本的信息系统的开发方法以及体会基于B/S结构的信息管理系统设计。
● 所建议开发项目的名称 :
网络商城。
● 所建议开发项目的任务提出者:
计算机科学与技术学院李军老师
● 所建议开发项目的开发者:
计算机科学与技术学院09级0901班李井军、彭果
● 所建议开发项目的开发、测试及使用平台:
WINDOWS 7.
● 所建议开发项目的开发软件:
MyEclipse 8。6企业版,Tomcat7.0,SQL Server2005企业版,JDK1。6.
● 所建议开发项目的建模工具:PowerDesinger 15。
1.2 可行性研究的前提
1。2.1条件假定和限制
建议软件寿命:未知。
经费来源:无.
硬件条件:Intel Pentium 4、2G内存同等性能及以上的硬件条件。
运行环境:Window 2003/XP。
数据库:Microsoft SQL server2005.
投入运行最迟时间:2012年1月2日。
1。3 技术可行性分析
1。3。1技术的支持能力
本系统采用MVC设计模式,使用当前最流行的Struts2+Spring3+Hibernate框架进行开发,在前台用JSP页面进行开发和管理用户界面,利用轻巧的JavaScript库—jQuery处理页面的JavaScript脚本,使开发更加的高效、提示信息更加的完善、界面更加友好,并且有较强的亲和力。后台采用微软的SQLServer2005数据库。本系统采用的技术和开发环境在实际中应用非常广泛,充分说明本系统在技术方面的可行性。
此前,我们已使用相同技术开发过类似软件系统,具有一定开发经验.此外,从开发人员的水平考虑,本系统的2名开发人员,具有较强软件开发能力,且之前开发参加过类似软件系统的开发,经验丰富。
1。3。2技术的优势
1.B/S结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。
2。J2EE体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求.
3。开发效率、代码重用率高。
4。跨平台,编写一次,随处运行.
1。3.3技术的难点
1.考虑系统的高并发问题。
2。系统安全性问题。
1。4 经济可行性分析
1.4。1投资
1。基础投资
计算机 10台总记8万,服务器 4台 总记20万,数据通讯设备5万元,安全与保密设备1万元,操作系统,应用软件和数据库管理软件0.4万元。所以总基建投资需要 34.4万元.
2。经常性支出
对服务器定期更新和维护,1000元一个月,宽带网络1万元一年, 2个管理员每月2000元/个,公司人员如果需要进行自己维护,员工维护培训费用.
1。4.2效益
1.经常性收益
(1)提高商城管理效率的时间收益。
(2)因网上购物替代传统购物模式,而减少通讯等的经费损失 5万/年。
总结:收益/投资比:按5年算,140万/64。4万,收益远远大于投资。
1。5 社会可行性分析
1.5。1法律因素
1.所有软件都选用正版。
2.所有技术资料都由提出方保管。
3。合同制定确定违约责任。
1。5。2用户可行性
使用本系统人员要求有一定计算机基础的人员,系统管理员要求有计算机的专业知识,所有人员都要经过一定的指导。管理人员也需经一般培训。经过培训人员将会熟练使用本系统.
系统管理员将进行专业培训,他们将熟练管理本系统。
1。6 结论意见
由于投资效益比远大于支出, 技术、经济、操作都有可行性,可以马上进行开发。
37
网络商城管理系统 第二章 需求分析
第二章 需求分析
2.1 概述
2。1.1 编写目的
本文档由彭果、李井军小组共同编写.本需求分析目的在于明确说明本系统需求,界定系统实现功能的范围,指导系统设计以及编码。并且下阶段的设计、开发提供依据,为项目组成员对需求的详尽理解,以及在开发开发过程中的协同工作提供强有力的保证。
本文档的读者为项目组的全体开发人员.
2.1。2 项目范围
本商城系统包括:商品管理、会员管理、购物管理、订单管理等模块。
2.1。3运行环境
系统所需运行环境如下:
表2-1 软件环境
名称
版本
语种
操作系统
Windows
7
简体中文
数据库平台
SQL Server
2005
简体中文
运行平台
Tomcat
6。0
简体中文
2.2 需求分析
2.2。1 功能划分
1。前台展示模块:
商品分类检索
用户登录与注册
购物车
订单生成
订单查询
2。后台管理模块:
管理员管理
商品类别管理
商品管理
会员管理
处理订单
2。2.2 功能需求
后台管理员分为系统管理员、货物管理员两种.
1。系统管理员:系统管理员可以对所有管理员进行管理,可以添加删除管理员资料,赋予权限等等。
2.货物管理员:货物管理员能够对所有的商品信息、商品类别进行增删改.
2。3数据流图
2.3。1 系统顶层图
管理员输入帐号密码后进入管理系统,系统对管理员身份进行判断后会显示相应权限的模块,系统会根据要求进行数据读取.数据包括商品信息,商品类别信息,订单信息等等.具体流程如下图所示:
图2.1 系统顶层图
2。3。2 一层分解图
根据管理员不同的权限可以控制相应权限的模块,响应的模块会产生相应的数据流在模块与数据库之间进行交互.具体流程如下图所示:
图2。2系统一层分解图
2.3。3 二层分解图
1。管理员信息管理
系统管理员可以查询与新增管理员,查询到管理员后可以进行信息的修改,新增和修改后的管理员信息会更新管理员信息库。具体流程如下图所示:
图2。3管理员信息管理分解图
2。用户信息管理
系统管理员可以先从用户信息库按照相应条件读取用户的信息,然后在模块中对用户信息进行修改,然后再更新用户信息库.具体流程如下图所示:
图2.4用户信息管理分解
3.商品管理
管理员先可以从商品类别库或者商品信息库中按照相应条件读取到商品的类别信息和商品信息,然后再在相应模块中对类别或者商品进行增加、修改和删除,最后再提交并且更新商品类别信息库或者商品信息库。具体流程如下图所示:
图2。5商品管理分解图
4.订单管理
管理员先从订单信息库中按照相应条件读取到订单信息,然后在订单管理模块中对订单进行修改,修改后更新订单信息库。具体流程如下图所示:
图2.6订单管理分解图
2。4 数据字典
2.4。1数据流条目
主要的数据流条目如下:
表2.1 管理员登录信息数据流
编号
F1
数据流名称
管理员登陆信息
简述
管理员在登陆时输入的账号、密码和验证码
去向
登陆管理
组成
用户名+密码+验证码
表2.2管理员登录错误信息数据流
编号
F2
数据流名称
登陆错误信息
简述
用户名或密码错误后返回给用户的信息
去向
管理员
组成
错误信息
表2。3管理员信息数据流
编号
F3
数据流名称
管理员信息
简述
管理员信息库发出的管理员信息
去向
登陆管理
组成
管理员信息
表2。4修改后的管理员信息数据流
编号
F4
数据流名称
修改后的管理员信息
简述
管理员修改后的管理员信息
去向
管理员信息库
组成
管理员信息
表2.5判断身份后的管理员信息数据流
编号
F5
数据流名称
判断身份后的管理员信息
简述
登陆管理对管理员身份判断后的信息
去向
后台管理系统
组成
管理员权限+管理员信息
表2。6商品信息数据流
编号
F6
数据流名称
商品信息管理
简述
对商品进行增加、修改、删除后的信息
去向
商品信息库
组成
商品信息
表2.7类别信息数据流
编号
F7
数据流名称
类别信息管理
简述
对商品类别进行增加、修改、删除后的信息
去向
商品类别信息库
组成
商品类别信息
表2。8订单信息数据流
编号
F8
数据流名称
订单信息管理
简述
对订单进行修改后的信息
去向
订单信息库
组成
订单信息
2。4。2 数据项条目
1。数据项名称:用户ID
简述:商城注册用户的编号
类型:整形
长度:6
取值范围及含义:从000001开始自动增长
2.数据项名称:用户名
简述:商城注册用户用户名
类型:可变长度字符串
长度:50
取值范围及含义:从“A—Z”、“0—9”中由用户自行定义,用于用户登录商城时输入的用户名
3.数据项名称:用户密码
简述:商城注册用户的密码
类型:可变长度字符串
长度:50
取值范围及含义:从“A—Z”、“0—9”中由用户自行定义,用于用户登录商城时输入的用户密码
4.数据项名称:管理员ID
简述:管理员的编号
类型:整形
长度:4
取值范围及含义:从0001开始自动增长
5。数据项名称:管理员用户名
简述:管理员的登录帐号
类型:可变长度字符串
长度:50
取值范围及含义:无限制,自定义
6.数据项名称:管理员密码
简述:管理员登录的密码
类型:可变长度字符串
长度:50
取值范围及含义:每个字位度可以在"A"—”Z"或"0”—“9"中取,用于用户信息的保密.
7。数据项名称:商品编号
简述:每个商品的编号
类型:整形
长度:无
取值范围及含义:从1开始由系统自动增长
8.数据项名称:商品名称
简述:每个商品的名称
类型:可变长度字符串
长度:50
取值范围及含义:取值范围不限,表示该件商品的名称
2。4。3 加工条目
1.加工名:管理员登陆
激发条件:收到到登陆请求时
优先级:高
输入:有效的用户名,密码
输出:管理员身份信息,登陆错误信息
加工逻辑:根据管理员的登陆申请查询管理员信息表。
if 用户名存在,密码正确;
Then 输出身份信息;
Else 输出“用户名或密码错误";
Endif
2。加工名:商品类别查询
激发条件:收到管理员身份信息后
优先级:高
输入:要查询的商品类别信息
输出:商品类别信息
加工逻辑:根据管理员的操作输出商品类别信息
if 商品类别信息正确;
Then 输出商品类别信息;
Else 输出“没有此商品类别”;
Endif
3。加工名:商品信息管理
激发条件:收到管理员身份信息后
优先级:高
输入:要查询的商品信息
输出:商品信息
加工逻辑:根据管理员的操作输出商品信息
if 商品信息正确;
Then 输出商品信息;
Else 输出“没有此商品";
Endif
网络商城管理系统 第三章 概念设计
第三章 概念设计
3.1实体之间的联系
1.一个用户可以查看或购买多件商品,一件商品可由多个用户购买.
2.一个用户可以有多个订单,一个订单只属于一个用户.
3。一件商品有多张图片,一张图片只属于一个商品.
4.一件商品只属于一个类别,一个类别可以有多件商品。
5.一个管理员可以修改多件商品,一件商品可以被多个管理员修改。
6。一个管理员可以修改多个订单,一个订单可以被多个管理员修改.
7。一个管理员可以修改多个商品类别,一个商品类别可以被多个管理员修改.
3。2 E-R图
3.2。1 局部E-R图
1。用户购买商品E—R图
图3.1 用户购买商品E-R图
2。用户查看或生成订单E-R图
图3。2用户查看或生成订单E—R图
3.商品图片E-R图
图3。3商品图片E—R图
4。商品类别E-R图
图3。4商品类别E-R图
5.订单管理E—R
图3.5订单管理E—R图
6。商品管理E—R图
图3.6商品管理E-R图
7。商品类别管理E—R图
图3.7商品类别管理E—R图
3。2.2系统全局E—R图
图3.8网络商城管理系统全局E-R图
网络商城管理系统 第四章 逻辑结构设计
第四章 逻辑结构设计
4.1 关系模型的设计依据
根据需求分析中的E-R图,可以很清晰的看出各个实体的属性和实体之间的联系,通过对实体的属性和之间的联系的分析,我们将其由概念模型向关系模型转化,并且根据范式化理论进行优化.
对于实体间的联系我们分不同的情况讨论:
若实体间的联系是1:1,可以在两个实体转换成的两个关系中任意一个关系的属性中加入另一个关系的码。
若实体间联系为1:n,则在n端实体转换成的关系中加入1端实体转换成的关系码。
若实体间联系为n:m,则将联系转换为关系,关系的属性为诸个实体的码加上联系具有的属性,而关系的码则为诸实体的码的组合.
4。1 实体间联系转化的关系模式
根据以上的关系模型设计依据信息,我们可以对实体进行关系模型的转化。
1。用户购买商品概念模型向关系模型的转化:
用户信息表(用户ID,用户名,用户密码,真实姓名,地址,电子邮件,电话号码)
商品信息表(商品ID,商品名称,商品描述,创建时间,采购价格,市场价格,销售价格,款式,是否推荐,浏览量,销售量,商品类别ID,商品图片ID)
订单项表(订单ID,商品ID,商品名称,商品价格,商品数量,订单信息ID)
2。管理员后台管理概念模型向关系模型的转化:
管理员信息表(管理员ID,用户名,密码)
订单信息表(订单信息ID,订单名称,送货地址,电话,采购价格,创建时间,支付方式,用户ID)
商品信息表(商品ID,商品名称,商品描述,创建时间,采购价格,市场价格,销售价格,款式,是否推荐,浏览量,销售量,商品类别ID,商品图片ID)
商品类别信息表(商品类别ID,类别名称,类别级别,父节点)
商品图片表(商品图片ID,路径)
3。数据依赖
(1)用户信息
F1=(用户ID→用户名,用户ID→用户密码,用户ID→真实姓名,用户ID→地址,用户ID→电子邮件,用户ID→电话号码)
(2)商品信息
F2=(商品ID→商品名称,商品ID→商品描述,商品ID→创建时间,商品ID→采购价格,商品ID→市场价格,商品ID→销售价格,商品ID→款式,商品ID→是否推荐,商品ID→浏览量,商品ID→销售量,商品ID→商品类别ID,商品ID→商品图片ID)
(3)订单项
F3=(订单ID→商品ID,商品ID→商品名称,商品ID→商品价格,商品ID→商品数量,订单ID→订单信息ID)
(4)管理员信息
F4=(管理员ID→用户名,管理员ID→密码)
(5)订单信息
F5=(订单信息ID→订单名称,订单信息ID→送货地址,订单信息ID→电话,订单信息ID→采购价格,订单信息ID→创建时间,订单信息ID→支付方式,订单信息ID→用户ID)
(6)商品类别信息
F6=(商品类别ID→类别名称,商品类别ID→类别级别,商品类别ID→父节点)
(7)商品图片
F7=(商品图片ID→路径)
4.2 关系模型的优化
4。2.1 确定范式级别
根据上述分析所归结出来的数据依赖的种类和在本系统实际的开发过程中,需要涉及多表的查询及表的修改和删除,且存在多值依赖的实际情况下,其关系模式应达到BCNF。
4。2.2 实施规范化处理
根据以上信息,我们发现订单项表中存在传递依赖,因此我们要对此关系进行优化。
优化后的关系模型如下:
用户信息表(用户ID,用户名,用户密码,真实姓名,地址,电子邮件,电话号码)
商品信息表(商品ID,商品名称,商品描述,创建时间,采购价格,市场价格,销售价格,款式,是否推荐,浏览量,销售量,商品类别ID,商品图片ID)
订单项表(订单ID,商品ID,订单信息ID)
管理员信息表(管理员ID,用户名,密码)
订单信息表(订单信息ID,订单名称,送货地址,电话,采购价格,创建时间,支付方式,用户ID)
商品类别信息表(商品类别ID,类别名称,类别级别,父节点)
商品图片表(商品图片ID,路径)
网络商城管理系统 第五章 物理结构设计
第五章 物理结构设计
5。1 创建数据库及数据表
本系统采用SQLServer2005数据库,创建的数据库名称为shop。
表的结构设计如下:
1. tb_customer(用户信息表)
表5。1用户信息表
字段名
数据类型
是否为空
是否为主键
说明
Cid
INT
否
是
系统自动编号
Username
Varchar(50)
否
否
用户名
Password
Varchar(50)
否
否
用户密码
Realname
Varchar(50)
是
否
真实姓名
Address
Varchar(250)
是
否
地址
Email
Varchar(50)
是
否
电子邮件
Mobile
Varchar(11)
是
否
电话号码
2. tb_orderitem(订单项表)
表5.2订单项表
字段名
数据类型
是否为空
是否为主键
说明
OrderItem_id
INT
否
是
系统自动编号
productID
INT
否
否
商品编号
orderID
Varchar(30)
否
否
订单编号
3。 tb_productInfo(商品信息表)
表5。3商品信息表
字段名
数据类型
是否为空
是否为主键
说明
id
INT
否
是
系统自动编号
Name
Varchar(100)
否
否
商品名称
Description
TEXT
是
否
商品描述
createTime
DATETIME
是
否
创建时间
baseProce
FLOAT
是
否
采购价格
marketPrice
FLOAT
是
否
市场价格
sellPrice
FLOAT
是
否
销售价格
sexRequest
Varchar(5)
是
否
所属款式类别(男款、女款)
Commend
BIT
是
否
是否推荐
clickCount
INT
是
否
浏览量
sellCount
INT
是
否
销售量
categoryId
INT
是
否
商品类别ID
uploadFile
INT
是
否
上传文件ID
4。 tb_productcategory(商品类别信息表)
表5。4商品类别信息表
字段名
数据类型
是否为空
是否为主键
说明
id
INT
否
是
系统自动编号
Name
Varchar(100)
否
否
类别名称
Level
INT
是
否
类别级别
Pid
INT
是
否
父节点
5。 tb_order(订单信息表)
表5。5订单信息表
字段名
数据类型
是否为空
是否为主键
说明
Order_id
INT
否
是
系统自动编号
Name
Varchar(50)
否
否
订单名称
Address
Varchar(50)
否
否
送货地址
Mobile
Varchar(11)
否
否
电话
totalPrice
FLOAT
是
否
采购价格
CreateTime
DateTime
是
否
创建时间
paymentWay
Varchar(15)
是
否
支付方式
cutomerId
INT
是
否
用户ID
6。 tb_uploadfile上传文件表
表5.6上传文件表
字段名
数据类型
是否为空
是否为主键
说明
id
INT
否
是
系统自动编号
path
Varchar(255)
否
否
文件上传路径
7. tb_user管理员表
表5.7管理员表
字段名
数据类型
是否为空
是否为主键
说明
id
INT
否
是
系统自动编号
username
Varchar(50)
否
否
管理员名称
Password
Varchar(50)
否
否
登陆密码
5。2 数据的存放位置设计
由系统应用情况特设计如下存储方式,所有的表由于信息量大且使用频繁将其存储在高速存储器(硬盘)上。将表存储在不同的磁盘上以便提高查询效率,同时这样可以提高物理I/O读写效率。数据库备份文件和日志文件等文件因为使用频率小而且数据量非常大,存放在低速存储设备上.
网络商城管理系统 第六章 运行与维护
第六章 运行与维护
6。1 项目运行界面
1。主界面
将SQL Server 2005主服务打开,再将项目打包的war包放到tomcat下的workapp下,然后点击开始菜单→运行→输入cmd回车→输入startup回车,便可运行tomcat。再打开浏览器输入http://localhost:8080/Shop/网址便可进入主界面。
图6.1主界面
2。会员登录界面
主界面点击登录便会出现会员登录界面.输入正确的用户名和密码后便可登录自己的账户.
图6.2登录界面
3.用户登录后购买东西
用户选择一个商品后可以查看商品的信息,如价格和详细介绍。
图6。3购买界面
4.购买后产生订单
查看商品后点击购买便会进入此页面,用户可以选择商品的数量、返回继续购买商品或者结账。
图6。4订单界面
5。订单确认
点击结账后会出现订单确认页面,上面显示了用户购买的商品信息以及应付款总额,用户确认信息后便可点击付款。
图6.5订单确认界面
6。付款后产生订单
用户付款后便会产生一个订单,用户在自己的订单查看界面可以查看到此订单以及订单当前的状态。
图6。6查看订单界面
7。管理员登录
在浏览器中键入http://localhost:8080/Shop/admin/ 便会出现商城的后台管理登录界面。管理员输入帐号密码后便可以登录到后台管理系统对政哥商城进行管理。
图6.7管理员登录界
8.添加商品
管理员登录后台管理系统后,点击左边界面的添加商品,便会出现添加商品的界面,可以按照界面内容提示输入商品信息,最后点击提交后便会出现成功或者失败信息.
图6。8添加商品界面
9。订单查询模块
管理员登录后台管理系统后,点击左边界面的查看订单,便会出现订单查询界面,输入相应的查询信息后点击提交按钮,便会查询出所需要查询的订单内容。
图6.9管理员订单查询界面
10.查看订单
查询订单后出现的订单信息界面,可以查看到订单的编号、所属用户、创建时间和状态等等。
图6.10管理员订单查看界面
11。更改订单状态
找到需要更改状态的订单,点击更改订单状态按钮,便会进入更改订单状态界面,可以选择订单是否已发货,点击确认进行修改。
图6。11鞥该订单状态界面
12。查看商品类别
管理员登录后台管理系统后,点击左边界面的查看商品类别,便会出现所有的商品类别信息,可以对其中的商品类别进行添加类别,添加子类别和删除管理。
图6.12商品类别修改界面
6。2 数据库初始化代码
——数据库 创建,初始化开始
ifexists(selectnamefrom sysdatabases wherename=’shop')
dropdatabase shop;
——创建shop数据库
Createdatabase shop
on
(
name='shop_mdf',
filename=’E:\db\shop。mdf',
size=5,
maxsize=500,
filegrowth=5
)
log on
(
name=’shop_ldf’,
filename='E:\db\shop。ldf’,
size=1,
maxsize=50,
filegrowth=2
)
—-使用shop数据库
use shop;
--创建tb_customer,如果存在则删除.
ifexists(select * from sysobjects wherename =’tb_customer’)
droptable tb_customer;
--创建tb_customer
CREATETABLE tb_customer (
id intNOTNULLidentity(1,1), --系统自动增加编号
username varchar(50) NOTNULL, --用户名
passwordvarchar(50) NOTNULL, -—登陆密码
realname varchar(20) DEFAULTNULL,—-真实姓名
address varchar(200) DEFAULTNULL,——地址
email varchar(50) DEFAULTNULL, —-电子邮件
mobile varchar(11) DEFAULTNULL, ——电话号码
PRIMARYKEY (id) --设ID为主键
);
--由于设置了自动增长,不能插入显式的值,所以必须先设置identity_insert 为on 进行初始化
set IDENTITY_INSERT tb_customer ON
—-给tb_customer表插入初始化值
INSERTINTO tb_customer (id,username,password,realname,address,email,mobile) VALUES
(1,’admin123’,'admin123’,NULL,’cs’,'xwzl860@gmail。com’,’186xxxx2318’);
—-如果存在订单表,则删除
ifexists(select * from sysobjects wherename ='tb_order’)
droptable tb_order;
-—创建订单表
CREATETABLE tb_order (
orderId intidentity(1,1) NOTNULL, —-订单编号
namevarchar(50) NOTNULL, ——收货人姓名
address varchar(200) NOTNULL, ——收货地址
mobile varchar(11) NOTNULL, —-收货电话号码
totalPrice floatDEFAULTNULL, -—总价格
createTime datetime DEFAULTNULL, —-订单创建时间
paymentWay varchar(15) DEFAULTNULL, ——支付方式
orderState varchar(10) DEFAULTNULL, ——订单状态
customerId intDEFAULTNULL, -—会员编号
PRIMARYKEY (orderId), ——设置订单编号为主键
CONSTRAINT FKFA98EE3DD0EDC05E FOREIGNKEY (customerId) REFERENCES tb_customer (id) —-将外键customerId引用tb_customer主键
);
set identity_insert tb_customer off
set identity_insert tb_order on
—-初始化订单表,使用select 表值 +union all 进行多值插入
INSERTINTO tb_order (orderId,name,address,mobile,totalPrice,createTime,paymentWay,orderState,customerId)
select 20112,’hunaneu’,’cs’,’186xxxx2318',120,’2011—12-20 13:52:40','POSTOFFICE_PAY’,'DELIVERED’,1 unionall
select 20113,’hunaneu',’cs',’186xxxx2318',120,’2011-12—22 09:44:58','POSTOFFICE_PAY',’DELIVERED’,1 unionall
select 20114,’hunaneu’,'cs’,’186xxxx2318’,0,’2011-12—22 09:57:52’,'POSTOFFICE_PAY’,'DELIVERED’,1
--如果存在订单项表,则删除
ifexists(select * from sysobjects wherename ='tb_orderitem')
droptable tb_orderitem;
-—创建订单项表
CREATETABLE tb_orderitem (
id intNOTNULLidentity(1,1), ——订单项编号(系统自动编号)
productId intNOTNULL, -—产品编号
orderId intDEFAULTNULL, -—订单编号
PRIMARYKEY (id), ——设订单项编号为主键
FOREIGNKEY (orderId) REFERENCES tb_order (orderId) -—外键引用订单表的主键
);
--将tb_customer自动增加插入关闭,才能将下一表的自动增长显式值插入进行初始化
set identity_insert tb_order off
set identity_insert tb_orderitem on
——多列插入,初始化
INSERTINTOtb_orderitem (id,productId,productName,productPrice,amount,orderId)
select 1,1,'Object—c’,120,1,20112 unionall
select 2,1,’coco2d’,120,1,20113
—-存在产品类表,则删除
i
展开阅读全文