数据库综合实验13——网上书店管理系统
实验要求:给出网上书店管理系统的需求分析报告(见四),要求根据功能分析和数据分析设计概念模型,实现完整的数据库(包括:各种表,视图,必要的存储过程,触发器等)。
实验内容和步骤如下:
-
1.表结构设计:设计文档要求说明每一张表以及每一个字段的含义,说明每个表的主键、外键、约束等;
-
1)图书信息表bookInfo
其中bookID作为主键。
-
2)图书作者表author
bookID和authorName一起组成主键。bookID是来自于表bookInfo的外键。sequenceNum只能取‘1’‘2’‘3’‘4’。
-
3)丛书表seriesBook
bookID是引用表bookInfo的外键。 -
4)关键字表keywords
bookID和keyword是主键。同一个bookID对应的keyword不超过十个,即拥有同一个bookID的记录不超过10条。bookID是来自于表bookInfo的外键。 -
5)图书库存表inventory
bookID和storageLocation是该表的主键。bookID是来自于表bookInfo的外键。 -
6)供应表provide
supplierID和bookID是主键。bookID是来自于表bookInfo的外键。supplierID是引用表supplier的外键。 -
7)缺书记录表outOfStockRegistration
bookID是该表的主键。bookID是来自于表bookInfo的外键。QTY要大于0。 -
8)客户表customer
其中customerID是主键。password字符串的长度要在8~16以内。creditRank只能取1、2、3、4、5中的数。当creditRank小于等于2时对应的creditLine等于0,creditRank等于5时creditLine为NULL。 -
9)订单表orders
orderID是主键。customerID是引用表customer外键。deliveryState默认为未发货,可以取“未发货”、 “已发货”或“已交付”。 -
10)订单书籍表orderBook
orderID和bookID是主键。orderID是引用表ordero的外键。bookID是引用表bookInfo的外键。
-
11)供应商表supplier
supplierID是主键。 -
12)供货表supply
supplierID和bookID一起构成主键。supplierID是引用表supplier的外键。bookID是引用表bookInfo的外键。QTY是大于0的整数。
2.建立数据库;
-
-
1)图书信息表bookInfo
-
2)图书作者表author
-
3)丛书表seriesBook
-
4)关键字表keywords
-
5)图书库存表inventory
-
6)供应表provide
-
7)缺书记录表outOfStockRegistration
-
8)客户表customer
-
9)订单表orders
-
10)订单书籍表orderBook
-
11)供应商表supplier
-
12)供货表supply
4. 建立必要的视图;
-
1)客户相关信息视图,包括:客户基本信息(客户ID、客户名、地址、余额、信用等级、信用额度),客户历史订单信息(订单号、订单总价),订单的发货信息。
-
2)书目信息视图
5. 建立必要的存储过程和触发器。
-
a)触发器
-
1)一本书最多有10个关键字。
-
2)password字符串的长度要在8~16以内。
-
3)当creditRank小于等于2时对应的creditLine等于0,creditRank等于5时creditLine为NULL。
-
b)存储过程
-
1)根据客户ID查询客户信息
-
2)根据客户ID查询客户订单信息
-
3)可按照书号,书名,出版社,关键字(可指定匹配程度(可选))、作者(按第一,第二……作者查询(可选))进行查询。根据书号、书名、出版社、关键字、作者、作者序号进行查询,并可进行模糊查询。
.sql文件见 数据库综合实验 网上书店管理系统