数据库课程设计网上书店数据库管理系统.docx

上传人:b****5 文档编号:6514387 上传时间:2023-01-07 格式:DOCX 页数:11 大小:229.78KB
下载 相关 举报
数据库课程设计网上书店数据库管理系统.docx_第1页
第1页 / 共11页
数据库课程设计网上书店数据库管理系统.docx_第2页
第2页 / 共11页
数据库课程设计网上书店数据库管理系统.docx_第3页
第3页 / 共11页
数据库课程设计网上书店数据库管理系统.docx_第4页
第4页 / 共11页
数据库课程设计网上书店数据库管理系统.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

数据库课程设计网上书店数据库管理系统.docx

《数据库课程设计网上书店数据库管理系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计网上书店数据库管理系统.docx(11页珍藏版)》请在冰豆网上搜索。

数据库课程设计网上书店数据库管理系统.docx

数据库课程设计网上书店数据库管理系统

网上书店数据库系统设计

概念结构设计

1.书籍信息表

数据项

含义说明

数据类型

数据长度

取值围

ID

书籍id

整型

10

合法字符

ISBN号

区别每本书的唯一标识,

字符型

80

任意合法字符且在长度围

书籍名称

书籍的名称

字符型

80

合法的字符

书籍作者

书籍的作者

字符型

10

合法字符

丛书id

整型

10

合法字符

出版商

书籍的出版商

字符型

80

关键字

书籍的关键字

字符型

80

书籍的目录

字符型

封面

书籍封面

字符型

2.供货信息表

数据项

含义说明

数据类型

数据长度

取值围

书籍id

区别每本书id

整型

10

库存量

书籍的存货量

整型

10

价格

书籍的单价

浮点型

10

库存位置

书籍的位置

字符型

80

合法字符

供应商id

供应商的id

整形

10

 

3.订单信息表

数据项

含义说明

数据类型

数据长度

取值围

订单id

区别每个不同订单的唯一标识

整型

10

用户id

订购人的注册网名

字符型

10

合法的字符

订购日期

用户生成订单的时间

日期型

日期型的长度

满足特定的日期格式

订单总数

每份订单书籍的数量

整型

10

1-9999999999

发货地址

管理员确定发货的地址

字符型

80

订单状态

订单的发货状态

字符

80

 

4.顾客信息表

数据项

含义说明

数据类型

数据长度

取值围

用户id

唯一区分用户的表示

字符型

20

合法的字符

用户姓名

顾客的真实姓名

字符型

20

合法的字符

用户密码

用户的登录密码

字符型

10

家庭住址

顾客收货地址

字符型

100

合法的字符

账户余额

用户可用的金额

整型

10

信用等级

整型

10

 

2.根据对网上书店的需求分析,画出如下实体的ER图和实体之间的关系ER图。

图-1 书籍信息ER图

 

图-2缺货信息ER图

图-3订单信息ER图

图-4用户信息ER图

图-5供货信息ER图

图-6订单详情ER图

图-7供应商信息ER图

 

图-6实体之间关系ER图

3.逻辑结构设计

3.1把ER图转换成相应的关系模型

(a)书籍{ISBN号,书籍名称,书籍作者,书籍出版年份}

(b)订单{订购号,订购人,订购日期,订购书籍,书籍数量,发货日期}

(c)库存{ISBN号,库存量,价格,折扣,库存下限}

(d)顾客{注册名,真实姓名,家庭住址,联系式,购书卡号

(e)管理员{管理员编号,管理员真实姓名,密码,具体身份,}

(f)书-订单{订单号,ISBN号,书籍数量,发货日期}

(g)订单-顾客{订单号,注册名,订购日期}

(h)库存-订单{ISBN号,订单号}

3.2数据模型的优化

将关系模式订单垂直分解为书-订单,和订单-顾客。

 

个人体会

为期近一个星期的软件能力测试实习结束了,回首整个过程,当第一次拿到实习报告的时候,真的没有想到自己能够和我的同伴们顺利的完成任务,最终事实证明我们做到了,我们学到了更多的知识。

在这期间,我们开始接触了小型的系统。

这些小型的系统分析、设计与实现巩固了我们的基础知识,让我们学会了一些编程的技巧,以及一些验证的法。

首先是需求分析这块,它很重要。

我们根据老师给的要求,结合在网上差的一些资料,做了初步的需求分析,本系统的主要功能是实现信息的发布和管理,涉及到前台用户对书籍信息的浏览和后台管理。

在前台的新闻浏览模块里,一般需要对书籍进行分类展示,并需要通过栏目导航进入特定的书籍信息模块。

如有文艺类书籍,理工类书籍,计算机类书籍等等。

在后台的管理面。

需要由合法的管理者来管理书籍的添加、修改、删除等,还有一个管理者的登录、注销的模块。

最重要的是管理网上交易。

从后台管理大体来看,系统实际分为,书籍管理栏目、网上购物管理及模块管理。

然后进行了系统总体设计,我们采用采用B/S模式实现,分为三个层次。

用户界面层:

界面层为客户端浏览器提供对应用程序的访问,这一层是为用户提供操作接口而实现的。

业务逻辑层:

包含各种业务规则和逻辑的实现,业务规则完成如匿名用户书籍查找,用户登录时进行身份认证等。

数据访问层:

数据访问层为业务逻辑层提供数据服务,首先设计了一个连接数据库的类,然后封装了对数据库的数据进行的操作。

访问数据库的结果供业务逻辑层使用。

现在我谈一下自己做系统总体设计的体会。

系统总体设计的好坏直接影响后面的编码过程。

刚开始我们的总体设计不是很完善,导致在具体实现时,我们的模块划分的不是很好,数据表的设计也不能很好的反映现实情况。

后来我们又完善了系统的总体设计,对各个模块进行了详细的规划,系统层次显得分明,编码也相对容易一些。

  最主要的是数据库设计与实现。

在设计一个数据库时,首先应该仔细研究业务需求。

雨雾需求将直接决定表的设计。

表之间可以是一对一、一对多、多对多的关系。

在一般情况下,它们是一对一的关系:

即一原始单据对应且只对应一个实体。

在特殊情况下,它们可能是一对多或多对一的关系,即一原始单据对应多个实体,或多原始单据对应一个实体。

明确这种对应关系后,对我们设计录入界面大有好处。

数据库设计的实用原则是:

在数据冗余和处理速度之间找到合适的平衡点。

表的设计应该遵循“三少”原则:

数据库中表的个数尽量少,一个表中组合主键的字段个数尽量少,表中的字段个数尽量少。

但是必须要能反映现实情况。

我一共设计了四个表,书籍信息表、用户登录表、银行卡表和订单表。

四个表的详细设计在上面数据库的设计中有说明,各表的关系也用E-R图展示出来了,这里就不在赘述了。

最后我觉得理论知识很必要,实践也不可缺少,只有在实践中才能更清楚的了解自己对理论知识的掌握程度,才能学以致用,把所学的知识运用到实践中去。

通过这次课程设计,我培养了自己的动手操作能力。

我基本经历了整个系统的开发:

从需求分析,到系统的总体设计、详细设计,再到数据库的设计与实现,让我能把现实世界中的实际问题在计算机部表示出来,并培养基本的、良好的软件设计与开发技能。

 

4.物理结构设计

4.1设计基本表

Ø书籍:

1.表名:

Books

2.所有者:

dbo

3.源代码:

CREATETABLEBooks(isbnCHAR(80),

TitleCHAR(80),

AuthorCHAR(10),

Year_publishedDATE,

PRIMARYKEY(isbn))

4.权限管理:

GRANTSELECT,INSERT,DELETE,UPDATEONBooksTO超级管理员

GRANTSELECT,INSERT,DELETE,UPDATEONBooksTO书籍管理员

GRANTSELECTONBooksTO顾客

Ø库存:

1.表名:

Store

2.所有者:

dbo

3.源代码:

CREATETABLEStore_Book(isbnCHAR(80),

qty_in_stockINTEGER(10),

priceNUMERIC(10,2),

discountNUMERIC(4,2),

low_stockINTEGER(10),

PRIMARYKEY(isbn))

4.权限管理:

GRANTSELECT,INSERT,DELETE,UPDATEONStoreTO超级管理员

GRANTSELECT,INSERT,DELETE,UPDATEONStoreTO书籍管理员

Ø顾客:

1.表名:

Customers

2.所有者:

dbo

3.源代码:

CREATETABLECustomers(cnameCHAR(20),

realnameCHAR(20),

addressCHAR(100),

telephoneCHAR(20),

cardnumCHAR(30),

PRIMARYKEY(cname))

4.权限管理:

GRANTSELECT,INSERT,DELETE,UPDATEONCustomersTO超级管理员

GRANTSELECT,INSERT,DELETE,UPDATEONCustomersTO用户管理员

GRANTSELECT,INSERT,ONCustomersTO顾客

Ø订单-顾客:

1.表名:

Orders

2.所有者:

dbo

3.源代码:

CREATETABLEOrders(ordernumCHAR(20),

cnameCHAR(20),

order_dateDATE,

PRIMARYKEY(ordernum),

FOREIGNKEY(cname)REFERENCESCustomers)

4.权限管理:

GRANTSELECT,INSERT,DELETE,UPDATEONOrdersTO超级管理员

GRANTSELECT,INSERT,DELETE,UPDATEONOrdersTO订单管理员

GRANTSELECT,INSERT,ONOrdersTO顾客

Ø订单-书:

1.表名:

Orderlists

2.所有者:

dbo

3.源代码:

CREATETABLEOrderlists(ordernumCHAR(20),

IsbnCHAR(80),

QtyINTEGER(10),

PRIMARYKEY(ordernum),

FOREIGNKEY(isbn)REFERENCESBooks)

4.权限管理:

GRANTSELECT,INSERT,DELETE,UPDATEONOrderlistsTO超级管理员

GRANTSELECT,INSERT,DELETE,UPDATEONOrderlistsTO订单管理员

GRANTSELECT,INSERT,ONOrderlistsTO顾客

Ø管理员:

1.表名:

Managers

2.所有者:

dbo

3.源代码:

CREATETABLEManagers(mgr_numCHAR(20),

mgr_nameCHAR(20),

passwordsCHAR(10),

actorCHAR(20),

mailCHAR(30),

PRIMARYKEY(mgr_num))

4.权限管理:

GRANTSELECT,INSERT,DELETE,UPDATEONManagersTO超级管理员

GRANTSELECT,UPDATEONManagersTO订单管理员

GRANTSELECT,UPDATEONManagersTO书籍管理员

GRANTSELECT,UPDATEONManagersTO用户管理员

4.2为数据库管理系统设计规则

createruleActor_ruleas@actorin('超级管理员','用户管理员',’书籍管理员’,’订单管理员’)

createruleMail_ruleasinstr(@mail,’@’)>1andright(@mail,1)<>’@’

5.数据库的实施

6.数据库的运行和维护

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

当前位置:首页 > 医药卫生

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

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