数据库网上购物系统设计Word下载.docx

上传人:b****7 文档编号:21865819 上传时间:2023-02-01 格式:DOCX 页数:18 大小:225.62KB
下载 相关 举报
数据库网上购物系统设计Word下载.docx_第1页
第1页 / 共18页
数据库网上购物系统设计Word下载.docx_第2页
第2页 / 共18页
数据库网上购物系统设计Word下载.docx_第3页
第3页 / 共18页
数据库网上购物系统设计Word下载.docx_第4页
第4页 / 共18页
数据库网上购物系统设计Word下载.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

数据库网上购物系统设计Word下载.docx

《数据库网上购物系统设计Word下载.docx》由会员分享,可在线阅读,更多相关《数据库网上购物系统设计Word下载.docx(18页珍藏版)》请在冰豆网上搜索。

数据库网上购物系统设计Word下载.docx

系统功能背景资料

客户在网上购买商品的管理内容包括:

可随时查询可订商品的详细情况,如商品分类、生产厂商、每个厂商的实际存货量、规定的最低存货量以及商品其他描述,便于客户选订。

客户可订购多种所需商品,每种商品可订若干份,交清所需金额后,订购处理即告完成。

为便于邮寄,客户需写明如下信息:

客户名、EMAIL、姓名、性别、邮政编码、地址等,网店将即时为每一个客户编制唯一代码。

商品售出,并且客户拿到后可对商品进行评价,商品所属网店店主可以对每条评论进行查看,一种商品可以有多人进行评论,系统要给每一条评论编号并记录评论内容、评论时间、发表人等。

网上商城对每种商品订购人数不限,每个客户可多次订购,所订商品亦可重复。

系统功能

1).查询可订购商品的详细情况。

2).客户通过管理员根据自己的需求选购商品,完成一次订购后需进行结账才能提交订单。

3).查询自己的购买情况。

4).可对各库表进行插入、修改、删除、查询等基本操作。

5).能详细查询某商品的订出情况,并且能统计出某商品总订购数量与总金额。

6).实现客户完成一次订购任务后汇总总金额。

7).网店可查询客户对商品的评价,并进行回复。

概要结构设计

通过对局部应用的选择,逐一设计出分E-R图,并对各个分E-R图进行合并,生成初步E-R图,消除不必要的系统冗余,可以得出网上购物系统E-R图。

图1“商品”实体E-R图

图2“客户”实体E-R图

图3“订单”实体E-R图

图4“订单明细”实体E-R图

图5“生产厂商”实体E-R图

图6“生产明细”实体E-R图

图7“评论”实体E-R图

网上购物系统E-R图如下:

图8系统E-R图

逻辑结构设计

关系模式设计

根据概念结构的设计,可以将系统E-R图转换为以下关系模式(画横线的为各关系的码):

商品(商品号,商品名称,商品分类,厂商名,商品其他描述,单价),外码:

厂商号

客户(客户号,姓名,EMAIL,客户电话,性别,邮政编码,地址),外码:

订单(订单号,客户号,收货地址,订单日期),外码:

客户号

订单明细(订单号,商品号,数量,商品总价),外码:

订单号,商品号

生产厂商(厂商号,厂商名,商品号,),外码:

商品号

生产明细(厂商号,商品号,实际存货量,最低存货量),外码:

厂商号,商品号

评论(评论编号,内容,评论时间,客户号),外码:

关系模式的分析优化

1.对以上关系模式进行函数依赖分析

考察关系模式:

商品(商品名称,商品分类,单价,商品其他描述,厂商号)

商品号—>

商品名称

商品分类

单价

商品其他描述

厂商名

商品它只有一个码:

(商品编号)这里没有任何属性对(商品编号)部分依赖或传递依赖,所以此关系模式属于3NF。

客户(客户号,姓名,EMAIL,客户电话,性别,邮政编码,地址)

客户号—>

姓名

EMAIL

客户电话

性别

邮政编码

地址

客户它只有一个码:

客户号,这里没有任何属性对客户编码部分依赖或传递依赖,所以此关系模式属于3NF。

订单(订单号,客户号,收货地址,订单日期)

订单号—>

收货地址

订报日期

订单它有一个码:

(订单号),这里没有任何属性对(订单号)部分依赖或传递依赖,所以此关系模式属于3NF。

订单明细(订单号,商品号,数量,商品总价)

(订单号,商品号)—>

数量

商品总价

订单详情它有一个码:

(订单号,商品号)这里没有任何属性对(订单号,商品号)部分依赖或传递依赖,所以此关系模式属于3NF。

生产厂商(厂商号,厂商名,商品号)

(厂商号)—>

厂商它有一个码:

(厂商号),这里没有任何属性对(厂商号)部分依赖或传递依赖,所以此关系模式属于3NF。

生产明细(厂商号,商品号,实际存货量,最低存货量)

(厂商号,商品号)—>

实际存货量

最低存货量

评论(评论编号,内容,评论时间,客户号)

(评论编号)—>

内容

评论时间

2.系统完整性设计

商品(商品号,商品名称,商品分类,厂商名,商品其他描述,单价)其中:

商品号为主码,商品名称,商品分类,生产厂商,单价约束都为非空,商品其他描述可为空。

客户(客户号,姓名,EMAIL,客户电话,性别,邮政编码,地址)其中:

客户号为主码;

姓名,EMAIL,客户电话,性别,邮政编码,地址约束都为非空。

订单(订单号,客户号,收货地址,订单日期)其中:

订单号为主码;

客户号为外码,参照(客户(客户号));

收货地址,订单日期约束都为非空。

订单明细(订单号,商品号,数量,商品总价),(订单号,商品号)为主码;

订单号和商品号为外码,分别参照(订单(订单号))和(商品(商品号));

数量,商品总价约束都为非空。

生产厂商(厂商号,厂商名,商品号)其中厂商号为主码;

商品号为外码,参照(商品(商品号))厂商名约束为非空。

生产明细(厂商号,商品号,实际存货量,最低存货量)其中(厂商号,商品号)为主码;

厂商号和商品号为外码,分别参照(生产厂商(厂商号))和(商品(商品号));

实际存货和最低存货约束都为非空。

评论(评论编号,内容,评论时间,客户号)其中评论编号为主码;

内容,评论时间,约束都为非空。

数据库物理设计

表商品信息表结构

字段名

说明

类型

长度

可否为空

约束

ProductID

字符型

10

主键

Productname

20

Unitprice

数值型

Category

Manufacturename

外码

Other

50

表客户信息表结构

CustomerID

Name

Sex

8

Email

EMAIL

Postcode

Phonenumber

Address

表订单信息表结构

OrderID

订单号

外键

Orderdate

订单日期

Taddress

表订单明细信息表结构

主键、外键

26

quantity

Totalprice

总价

表生产厂商信息表结构

manufactureID

manufacturename

表生产明细信息表结构

Pquantity

Lquantity

表评论信息表结构

CommentID

评论号

Comment

150

Commentdate

数据库构建

各数据表说明

编号

数据表名称

1

商品

主表

记录报刊信息

2

客户

记录客户信息

3

订单

记录订单基本信息

4

订单明细

辅助表

记录订单详细信息

5

生产厂商

记录生产厂商基本信息

6

生产明细

记录商品在厂的存货信息

7

评论

记录评论信息

数据库创建

在SQLSERVER2005中创建网上购物系统数据库,在数据库中创建商品,客户,订单,订单明细,生产厂商,生产明细,评论数据表及加入相关约束。

创建了满足管理需求的视图,写出相关业务操作所需的查询语句等。

操作代码详见“_孔维星.sql”文件。

数据库操作

--创建数据库shoppingonline

createdatabaseshoppingonline

on

name=shoppingonline,

filename='

c:

\'

size=5,

maxsize=10,

filegrowth=10%)

logon

name=shoppingonline_log,

size=3,

maxsize=5,

filegrowth=1)

go

--创建商品信息表ProductInfo

createtableProductInfo

Productidnchar(10)primarykey,

Productnamenvarchar(20)notnull,

Unitpricemoneynotnull,

categorynchar(10)notnull,

manufacturenamenchar(10)notnull,

othernvarchar(20)notnull,

--创建客户信息表customerinfo

createtablecustomerinfo

customeridnchar(10)primarykey,

namenvarchar(20)notnull,

sexnchar

(1)notnull,

emailnchar(20)notnull,

postcodenchar(10)notnull,

phonenumbernchar(11)notnull,

addressnvarchar(50)notnull

--创建订单信息表orderinfo

createtableorderinfo

orderidnchar(10)primarykey,

customeridnchar(10)notnull,

orderdatedatetimenotnull,

taddressnvarchar(50)notnull,

foreignkey(customerid)referencescustomerinfo(customerid)

--创建订单明细信息表orderdetailinfo

createtableorderdetailinfo

orderidnchar(10)notnull,

productidnchar(10)notnull,

quantitynchar(10)notnull,

totalpricenchar(20)notnull,

primarykey(orderid,productid),

foreignkey(orderid)referencesorderinfo(orderid),

foreignkey(productid)referencesproductinfo(productid)

--创建生产厂商信息表manufactureinfo

createtablemanufactureinfo

manufactureidnchar(10)notnullprimarykey,

manufacturenamenchar(26)notnull,

--创建生产明细信息表producedetailinfo

createtableproducedetailinfo

manufactureidnchar(10)notnull,

Pquantitynchar(10)notnull,

lquantitynchar(10)notnull,

primarykey(manufactureid,productid),

foreignkey(manufactureid)referencesmanufactureinfo(manufactureid),

--创建评论信息表commentinfo

createtablecommentinfo

commentidnchar(10)notnullprimarykey,

commentnchar(3)notnull,

commentdatedatetimenotnull,

--插入数据

--商品信息表productinfo

insertintoproductinfovalues('

0000001'

'

铅笔'

2,'

黑色'

一厂'

成绵路号'

0000002'

毛笔'

8,'

墨色'

二厂'

长虹大道号'

0000003'

圆珠笔'

5,'

蓝色'

三厂'

仙人路号'

--客户信息表customerinfo

insertintocustomerinfovalues('

0000011'

王强'

男'

'

432645'

成都双流'

0000022'

吴霞'

女'

564656'

湖北武汉'

0000033'

曾强'

582656'

湖南长沙'

--订单信息表orderinfo

insertintoorderinfovalues('

0000111'

2014-02-02'

0000222'

2014-03-03'

0000333'

2014-04-04'

--订单明细信息表orderdetailinfo

insertintoorderdetailinfovalues('

100'

200'

50'

400'

500'

--生产厂商信息表manufactureinfo

insertintomanufactureinfovalues('

0001111'

0002222'

0003333'

--生产明细信息表producedetailinfo

insertintoproducedetailinfovalues('

9000'

900'

8000'

800'

7000'

700'

--评论信息表commentinfo

insertintocommentinfovalues('

0011111'

优'

0022222'

良'

2014-05-05'

0033333'

差'

2014-06-06'

--简单查询

--查询全部商品的名称和单价

selectproductname,unitpricefrom

--查询全部客户的编号、姓名、地址、联系电话

selectcustomerid,name,address,phonenumberfrom

--查询全部订单的编号和订单日期

selectorderid,orderdatefrom

--查询下过订单的客户的姓名

selectnamefromjoinon查询订单编号为'

的客户号、客户名、性别

selectfromjoinonwhereorderid='

部分系统功能实现

总结

之前选择网上购物这个题目的时候,觉得这个题目应该是相对比较容易的,但是实际起来并非如此。

在分析实体的时候,本来以为只需要题目给出的四个实体就可以了,但是在画E-R图的时候发现有冗余,所以我又添加了“生产明细”和“订单明细”两个表,另外,为了更细化系统,又添加了一个“生产厂商”表。

不仅如此,在画E-R图的时候,我也犯了一些错误,比如给属性添加属性,这是对知识掌握不牢固的体现,提醒我要回去好好复习了。

E-R图画出来之后就容易了,因为脉络已经基本清晰了,但是在确定字符长度的时候还是拿不准到底该写多少,在参考书上的内容之后才确定下来。

由于VB已经学习了有一年时间了,有点生疏,在用VB做部分系统功能实现的时候,根据实验指导书一步一步走,最终还是做了出来。

通过这次的实践,我对数据库的学习有了进一步的巩固,但是回去之后还得再看一下书才可以,还有VB也得再复习复习了。

另外,通过这次实践,也让我第一次把理论联系到了实际,虽然这个系统并不太完善,但是只要今后多练习,我相信还是能够掌握这门学科的。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1