精品二手书销售数据库系统设计.docx
《精品二手书销售数据库系统设计.docx》由会员分享,可在线阅读,更多相关《精品二手书销售数据库系统设计.docx(21页珍藏版)》请在冰豆网上搜索。
精品二手书销售数据库系统设计
二手书销售数据库系统设计
《数据库原理与应用》课程实验五
数据库应用系统的设计
《二手书销售管理数据库系统》
班级
姓名
学号
系统分工
信管一班
赵书倩
20094777
12
信管一班
张小燕
20094713
12
信管一班
张建慧
20094712
34
信管一班
张光
20094774
34
实验日期:
2011年6月25号
二手书销售管理数据库系统
一、需求分析
1.开发目的
1)经过可行性分析和初步需求调查,抽象出该系统最高层数据流图,该系统由用户管理、系统管理等子系统组成,每个子系统分别配备一个开发小组。
2)进一步细化各个子系统。
其中用户管理子系统的主要功能是用户信息管理和交易管理,这其中交易管理分为出售管理、求购管理、买卖信息更新管理和搜索。
用户信息管理分为更新注册邮件、更新用户密码、更新用户基本信息和用户注册。
通过详细的信息流程分析和数据收集后,生成了该子系统的数据流图。
2.设计背景
随着商品经济的发展,人们通常有销售二手货物的需求,而大量的高校学生和顾客也有购买二手书籍的需求,现在的二手货物市场都还不够完善,没有统一的有组织有系统的数据库管理系统,而且现在二手书籍市场有如下特点:
总类多、规模小、交易随机性强。
针对这一现状,《二手书销售管理数据库系统》应运而生。
3.开发目标
项目目标是建立二手书销售管理系统,并建立相应的数据库系统,以创造给一个二手书籍在线交易平台,帮助大家便利的进行二手书籍交易。
4.系统结构图
图1-1二手书销售管理数据库系统系统结构图
图1-2实体间的E-R图
5.系统数据流图说明
1)数据流图说明
根据现在二手书市场的交易基本情况(种类多、规模小),我们定义系统功能如下:
系统管理为数据库管理员设计各种权限,用户管理为用户设计各种权限。
用户管理子系统下设计交易管理子系统、出售管理子系统、求购管理子系统、搜索管理子系统、更新注册邮箱管理、更新用户密码管理。
(1)系统中0层数据流图如图1-01层图所示:
图1-010层数据流图
系统的功能分为两个模块:
面向管理员的模块是系统管理,面向一般用户的模块是交易管理和用户信息管理。
(2)系统中系统管理数据流图如图1-02系统管理图所示:
图1-02系统管理数据流图
(3)系统中用户管理数据流图如图1-03用户管理图所示
图1-03用户管理数据流图
这个模块实现了用户请求交易,发布、更新交易信息的功能。
(4)系统中交易管理数据流图如图1-04交易管理图所示:
图1-04交易管理数据流图
在用户交易管理中,根据用户的提供的交易物品生成了“出售信息表”和“求购信息表”,用户可以随时对自发布的信息进行更改或删除。
在交易的过程中,系统会根据这两个表生成对应物品的求购(出售)信息目录供用户浏览参考。
对于没有明显求购或出售目标的用户,也可以浏览由求购、出售信息表生成的求购、出售物品目录。
(5)系统中出售管理数据流图如图1-05出售管理图所示:
图1-05出售管理数据流图
用户发出出售请求后,系统会自动检查用户是否已登录。
用户录入出售信息(包括出售物品名称(gods),出售物品价格(sellprice),出售物品种类(category),出售物品描述(selldes),联系电话(contactp),联系QQ(contactq))。
其中物品名称、价格、种类为必填字段。
联系方式为电话或QQ,考虑到用户可能不愿意留下自己的电话或QQ,我们将联系方式设为可选字段。
当有交易请求时,系统通过邮箱通知用户。
经用户检查录入信息正确无误,生成出售物品信息单。
系统将出售信息纳入出售信息表,并根据出售信息表上的内容发布出售信息。
(6)系统中求购管理数据流图如图1-06求购管理图所示:
图1-06求购管理数据流图
用户发出求购请求后,系统会自动检查用户是否已登录。
经用户检查录入信息正确无误,生成求购物品信息单。
系统将求购信息纳入出售信息表,并根据求购信息表上的内容发布求购信息
(7)系统中买卖更新管理数据流图如图1-07买卖更新管理图所示:
图1-07买卖更新管理数据流图
用户可以随时更新自己的买卖信息。
(8)系统中搜索管理数据流图如图1-08搜索管理图所示:
图1-08搜索管理数据流图
(9)系统用户信息管理数据流图如图1-09用户信息管理图所示:
图1-09用户信息管理数据流图
用户信息管理包括更改用户注册邮箱,更改用户密码,更改用户基本信息;交易管理包括出售管理这些管理操作主要针对用户信息表进行修改,每个用户只能在登陆后修改自己的信息。
(10)系统更新用户密码管理数据流图如图1-10更新用户密码管理图所示:
图1-10用户密码更新管理数据流图
用户修改密码时,需要输入原密码,并两次输入新密码,经系统审核无误后,用户可以修改密码。
(11)系统更新用户基本信息管理数据流图如图1-11更新用户基本信息管理图所示:
更新基本信息请求
图1-11更新用户基本信息管理数据流图
(12)系统用户注册管理数据流图如图1-12用户注册管理图所示:
图1-12用户注册管理数据流图
2)处理过程说明
通过对现在二手书交易管理的实际了解与分析,弄清了二手书交易管理工作的业务流程和管理功能。
从工作流程上来看,二手书交易主要有下列环节:
注册、登录、发布出售信息、查询、发布求购信息、实体交易、信息修改等。
业务流程可按用户不同身份卖家和买家的操作,不同的身份完成不同的处理功能(用户既可是卖家,也是买家):
(1)用户(买方或卖方)首先注册、登录,完善自己的个人信息,形成用户信息文件。
(2)作为卖家,其处理过程为是:
卖方登记出售的图书信息,形成图书信息文件;卖家有新的出售信息时,登记新售图书信息,增加入图书信息文件,并给图书求购处里模块以信息提示;交易完成后,卖方登陆后修改图书信息,修改图书信息文件。
(3)买方登录后查询所需图书,若有,则返回图书信息;若没有,则发布求购图书信息,形成求购图书信息文件。
系统中处理过程定义表如表1-13系统管理处理过程名、1-14用户管理处理过程图、1-15交易管理处理过程图、1-16出售/求购管理处理过程图、1-17买卖更新管理处理过程图、1-18用户信息管理处理过程图所示:
表1-13系统管理处理过程图
编号
处理过程名
处理功能描述
处理要求
输入数据项
输出数据项
1
搜索用户记录
控制用户信息
5秒
管理员请求及出售求购信息
警告用户或删除用户
2
警告用户
对不良信息用户进行警告
5秒
警告用户提示
发送用户警告信息
3
删除非法用户
删除非法用户
5秒
系统发出的删除用户请求
用户信息表中删除用户记录
表1-14用户管理处理过程图
编号
处理过程名
处理功能描述
处理要求
输入数据项
输出数据项
1
交易管理
控制出售、求购信息
5秒
用户信息表
出售信息表、求购信息表
2
用户信息管理
信息变更
5秒
用户信息表
用户管理
3
用户登录
登录控制
5秒
用户信息表
用户账户信息
表1-15交易管理处理过程图
编号
处理过程名
处理功能描述
处理要求
输入数据项
输出数据项
1
出售管理
出售信息统计
5秒
用户信息表、交易管理信息
出售信息表
2
求购管理
求购信息统计
5秒
交易管理信息
求购信息表
3
搜索
搜索求购、交易信息
5秒
交易求购、出售信息
搜索结果
4
买卖信息更新
更新买卖信息
5秒
交易信息更新请求
出售信息表
5
消息发布
发布求购出售信息
5秒
已更新求购出售信息
消息发布
表1-16出售/求购管理处理过程图
编号
处理过程名
处理功能描述
处理要求
输入数据项
输出数据项
1
检查
用户出售/求购信息检查
5秒
用户出售/求购请求
合格时用户录入信息
2
不合格处理
处理不合格出售/求购信息
5秒
用户出售/求购信息请求
提示出售/求购信息不合格
3
用户录入出售/求购信息
录入用户出售/求购信息
5秒
合格的出售/求购请求
成型的出售/求购信息描述
4
用户确认出售/信息
用户出售/求购信息确认
5秒
出售/求购信息描述
形成出售/求购物品信息单
5
出售/求购信息录入
录入信息
5秒
出售/求购物品信息单
形成出售/求购信息表及发布
表1-17买卖信息更新管理处理过程图
编号
处理过程名
处理功能描述
处理要求
输入数据项
输出数据项
1
检查用户是否登录
检查登录状态
5秒
用户更新买卖请求
登录状态
2
未登录处理
提示信息
5秒
用户未登录信息
提示用户
3
登录处理
处理请求
5秒
用户已登录信息
信息的处理
4
信息处理
信息处理
5秒
用户请求信息
形成求购/出售信息表
表1-18用户信息管理处理过程图
编号
处理过程名
处理功能描述
处理要求
输入数据项
输出数据项
1
更新注册邮箱
邮箱管理
5秒
用户请求
用户邮箱注册
2
更新用户密码
密码管理
5秒
用户更新密码请求
用户密码形成
3
更新用户基本信息
更新信息
5秒
用户更新信息请求
形成更新的用户信息表
4
用户注册
管理用户注册
5秒
注册请求
形成新用户
3)数据存储说明
二手书销售管理数据库系统社交的数据存储主要涉及了用户信息表、出售信息表、求购信息表等表的数据,涉及了用户基本信息、买方基本信息、卖方基本信息,其中涉及了用户信息管理、交易管理、求购管理、出售管理、搜索用户记录、发布出售信息、更新\修改消息等多个处理过程。
系统中数据存储定义表如表1--19二手书销售管理数据存储所示:
表1-19二手书销售管理数据存储
编号
数据存储名
数据项说明
建立该数据存储的处理过程
存取该数据存储的处理过程
1
用户信息表
用户名称、密码、求购请求、出售请求
用户注册
用户信息管理、交易管理、求购管理、出售管理
2
出售信息表
订单号、书名、日期、总金额、地址、出售请求
交易管理、买卖信息更新
搜索用户记录、交易管理、发布出售信息、更新\修改消息
3
求购信息表
订单号、书名、金额、地址、求购请求、用户信息
交易管理、买卖信息更新
搜索用户记录、交易管理、发布求购信息、更新\修改消息
6.数据字典描述
对收集的数据进行仔细分析之后,将数据项描述融汇到如下表1-20二手书销售管理系统数据字典表:
表1-20用户表数据字典
数据项名
含义
类型
长度
取值范围
与其他数据项的逻辑关系
用户名称
用户的名称标识
字符型
10
无
主属性
密码
用户登录的唯一标识
字符型
6
000000-999999
非主属性
图书编号
图示的唯一标识
字符型
16
无
主属性
书名
图书的名称标识
字符型
50
无
非主属性
作者
图书作者的标识
字符型
10
无
非主属性
出版社
图书版权的标识
字符型
50
无
非主属性
状态
图书存储状态的标识
字符型
30
库存或无库存
非主属性
价格
图书价格指数的标识
数值型
6,2
无
非主属性
类型
图书分类的标识
字符型
10
无
非主属性
订单号
订单的唯一标识
字符型
8
无
主属性
购买日期
购买时间的限定标识
日期型
8
无
非主属性
总金额
订单成交额的标识
数值型
6,2
0-999999.99
非主属性
地址
用户收货地点的标识
字符型
100
无
非主属性
入库时间
入库时间的限定标识
日期型
8
收购日期后一天
非主属性
出库时间
出库时间的限定标识
日期型
8
购买日期后一天
非主属性
仓库号
仓库的唯一标识
字符型
4
0001
主属性
仓库名
仓库的名称标识
字符型
8
仓库一
非主属性
二、概念结构设计
1.系统分E-R图设计
1)用户信息包括用户名称和密码。
用户信息的E-R如图2-01:
2-01用户信息的E-R图
2)图书信息包括图书编号、书名、作者、出版社、状态、价格、类型和入库时间。
图书信息的E-R图如图2-02:
2-02图书信息的E-R图
3)订单信息包括订单号、书名、日期、总金额和地址。
订单信息的E-R图如图2-03:
2-03订单信息的E-R图
4)仓库信息包括仓库号和仓库名。
仓库信息的E-R图如图2-04:
2-04仓库信息的E-R图
2.系统基本E-R图设计
二手书销售管理数据库系统的基本E-R图如图2-05:
图2-05二手书销售管理数据库系统的基本E-R图
三、逻辑结构设计
1.系统数据模型说明
根据二手书销售管理数据库系统的基本E-R图,有5个关系模式。
分别为:
用户(用户名称,密码)
图书(图书编号,书名,作者,出版社,状态,价格,类型,入库时间)
订单(订单号,书名,购买日期,总金额,地址,出库时间)
仓库(仓库号,仓库名)
购买(用户名称,图书编号,订单号,购买日期)
2.用户子模式设计
针对消费者群体和图书销售方的不同需求以及系统安全性的需求,定义了以下两个子模式:
用户-订单管理(用户名称,密码,订单号,图书编号,书名,作者,出版社,价格,购买日期)
仓库-订单管理(仓库号,仓库名,订单号,图书编号,出库日期)
用户管理应用只能查询用户名称,密码,订单号,图书编号,书名,作者,出版社,价格,购买日期,到货时间。
授权用户管理只能查询用户-订单管理视图。
仓库管理应用只能查询仓库号,仓库名,订单号,图书编号,出库日期。
授权仓库管理只能查询用户-订单管理视图。
而系统管理员可以查询以上所有属性。
1)Createviewas
Selectuserno,secode,order.orderno,book.bookno,bookname,
author,publish,price,ordertime
Fromuser,book,order,store;
2)Createviewas
Selectstoreno,storename,orderno,bookno,outtime
Fromstore,order,book;
四、数据库物理设计与实现
1.数据库设计
1)创建用户表
Createtableuser
(usernamechar(10)primarykey,
Secodechar(6)unique
);
2)创建订单表
Createtableorder
(ordernochar(8)primarykey,
Booknamechar(50),
Ordertimedate(8)notnull,
Sumnumber(6,2)notnull,
Addresschar(100)notnull,
Outtimedate(8)
);
3)创建图书表:
Createtablebook
(booknochar(16)primarykey,
Booknamechar(50),
authorchar(10),
publishchar(50),
statuschar(30),
pricenumber(6,2),
typechar(10),
intimedate(8)
);
4)建立仓库表:
Createtablestore
(store.nochar(4),
Storenamechar(10)
);
2.数据装载
1)装载用户表:
Insertintouservalues(‘张三’,‘890904’);
Insertintouservalues(‘李四’,‘890805’);
2)装载订单表:
Insertintoordervalues
(‘20116544’,‘数据库原理与应用’,06-25-11,31.86,‘香坊区和兴路26号’,06-26-11);
Insertintoordervalues
(‘20116545’,‘计算机网络’,06-25-11,32.88,‘五一大街88号’,06-26-11);
3)装载图书表:
Insertintobookvalues
(‘777-666-555-123’,‘数据库原理与应用’,‘王珊’,‘高等教育出版社’,‘存货108本’,31.86,‘计算机类’,02-01-11);
Insertintobookvalues
(‘777-666-555-124’,‘计算机网络’,‘谢希仁’,‘电子工业出版社’,‘存货88本’,32.88,‘计算机类’,01-23-11);
4)装载仓库表
Insertintostorevalues(‘0001’,‘仓库一’);
Insertintostorevalues(‘0001’,‘仓库一’);