当前位置:文档之家› 数据库论文(图书馆管理系统)

数据库论文(图书馆管理系统)

《数据库原理与应用课程设计C》课程设计教学大纲Course Design of Database Principles and Applications课程代码:课程性质:必修适用专业:总学分数:总学时数:16 编写年月:修订年月:执笔:学生姓名:学生学号:学院:专业班级:课程简介(中文):图书馆数据库课程简介(英文):Course design of the library一、课程设计目的《数据库原理及应用课程设计》是实践性教学环节之一,是《数据库原理及应用》课程的辅助教学课程。

通过课程设计,使学生掌握数据库的基本概念,结合实际的操作和设计,巩固课堂教学内容,使学生掌握数据库系统的基本概念、原理和技术,将理论与实际相结合,强化学生的实践意识、提高其实际动手能力和创新能力。

二、课程设计内容及学时分配要求学生按照《数据库原理及应用B课程设计》教学大纲完成一个数据库设计,并撰写相应的课程设计报告,主要内容包括:(1)数据库概念模式设计(2)数据库逻辑模式设计(3)数据库保护设计课程设计的学时安排如下:三、课程设计教学基本要求根据教师给定的选题,运用课堂中学到的数据库的基本理论与设计的知识,完成数据库概念设计、逻辑设计及部分物理设计的内容。

重点是ER图的设计、关系模式的转换与规范化以及如何利用DBMS完成数据表及数据库的创建和操作。

具体要求包括:1 数据库概念模式设计写出由基本项构思ERD的四条原则及根据这些原则相应得出的实体、联系及其属性,并确定主实体的主标识,画出ERD;用原则4检查改正错误;对其中复杂的多元联系进行分析,必要则改进。

2 数据库逻辑模式设计2.1 一般逻辑模型设计:写出由ERD导出一般关系模型的四条原则,列出数据库初步构思的关系框架,并检查改进之。

2.2 具体逻辑模型设计:按所用的DBMS要求,设计表(文件)的具体结构,在关系框架下补充字段类型、长度、小数位数等行。

3 数据库保护设计3.1 设计表间关系:列出父表与子表的关联索引,指出要建立的表间关系的类型。

3.2 完整性设计:列出主要字段完整性的字段名、完整性约束条件;列出记录完整性约束及其约束条件;列出参照完整性表。

四、课程设计选题一个图书借阅管理数据库要求提供以下服务:(1)可随时查询书库中现有书籍的种类、数量与存放位置。

所有各类书籍均可由书号唯一标识。

(2)可随时查询书籍借还情况。

包括借书人单位、姓名、借书证号、借书日期和还书日期。

任何人可借多种书,任何一种书可为多个人所借,借书证号具有唯一性。

(3)当需要时,可通过数据库中保存的出版社电话、邮编及地址等信息向有关书籍的出版社增购有关书籍。

一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有唯一性。

根据以上的情景假设,进行如下的分析与设计:(1)根据上述语义画出ER图。

(2)将ER模型转换成关系模型,并指出每个关系模式的主关键字。

(3)分析每个关系模式已经达到第几范式。

对于不符合第三范式要求的关系模式进行规范化。

(4)根据概念模型设计逻辑模型和保护设计。

(5)在SQLServer中实现。

五、本课程设计与其它课程的联系与分工先修课程:后续课程:六、成绩评定总分100分。

由以下五部分组成:(1)学生对待课程设计的态度,占30%;(2)数据库概念模式设计,占25%;(3)数据库逻辑模式设计,占20%;(4)数据库保护设计,占15%;(5)报告的编排及格式,占10%。

七、建议教材及教学参考书[1]崔巍编,《数据库应用与设计》,出版社,清华大学出版社年出版北京:2009注:1、“课程代码”由教务处教研科统一填写;2、“课程性质”按培养方案的“课程性质”及“必/选修”两栏填写;3、“适用专业”按招生简章填写;4、“开课学期”指1~8(10)中的数字,例如“大学英语”课程的开课学期为1、2、3、4;目录1 课程设计要求 (5)2 数据库概念模式设计 (5)2.1 整理的数据项 (5)2. 2 绘制ERD (6)3 数据库逻辑模式设计 (7)3.1 一般逻辑模型设计 (7)3.1.1 按四原则转化 (7)3.1.2 转化的逻辑模型 (8)3.1.3 逻辑模型的优化 (10)3.2 具体逻辑模型设计 (10)4 数据库保护设计 (12)4.1设计表间关系 (12)4.2完整性设计 (13)4.2.1书籍表 (13)4.2.2读者表 (13)4.2.3出版社表 (13)4.2.4管理员表 (13)4.2.5出版表 (14)4.2.6借阅表 (14)4.2.7增购登记表 (14)4.2.8增购表 (15)5 数据库实现 (15)5.1 建立数据库 (15)5.2 建立数据表 (16)5.2.1书籍表 (17)5.2.2读者表 (18)5.2.3出版社表 (19)5.2.4管理员表 (20)5.2.5出版表 (21)5.2.6借阅表 (22)5.2.7增购登记表 (23)5.2.8增购表 (24)5.3 数据库的表间关联 (25)6 感想与体会 (25)《数据库原理及应用》课程设计报告要求1 课程设计要求一个图书借阅管理数据库要求提供以下服务:(1)可随时查询书库中现有书籍的种类、数量与存放位置。

所有各类书籍均可由书号唯一标识。

(2)可随时查询书籍借还情况。

包括借书人单位、姓名、借书证号、借书日期和还书日期。

任何人可借多种书,任何一种书可为多个人所借,借书证号具有唯一性。

(3)当需要时,可通过数据库中保存的出版社电话、邮编及地址等信息向有关书籍的出版社增购有关书籍。

一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有唯一性。

根据以上的情景假设,进行如下的分析与设计:(1)根据上述语义画出ER图。

(2)将ER模型转换成关系模型,并指出每个关系模式的主关键字。

(3)分析每个关系模式已经达到第几范式。

对于不符合第三范式要求的关系模式进行规范化。

(4)根据概念模型设计逻辑模型和保护设计。

(5)在SQLServer中实现。

2 数据库概念模式设计2.1 整理的数据项出版社名电话地址邮编书序号书号书名种类数量存放位置借书日期还书日期借书证号姓名单位所缺书名登记号管理员号管理员姓名增购书名数量增购日期2. 2 绘制ERD3 数据库逻辑模式设计3.1 一般逻辑模型设计3.1.1 按四原则转化(1)原则一::ER图中的每一个独立实体变换为一个关系,其属性变为关系的属性,其主标识变为关系的主码。

书籍关系读者关系管理员关系(2)原则二:ER图中的从实体及相应的“的”联系变换为一个关系,从实体的属性加上主实体关系的主码构成这个关系的属性。

如果“的”联系是1:1的,则以主实体关系的主码(作为外来码)为这个关系的主码;如果“的”联系是1:M的,则以主实体关系的主码加上同一主实体个体联系的不同从属实体个体赖以相互区分的属性组,组成该关系的主码。

(无涉及原则二的转化)(3)原则三:1:M联系通过在“多”实体关系中增加相联系的“1”实体关系的主码及联系本身的属性来表达。

其中“1”实体主码为外来码。

(4)原则四:M联系转换成一个独立的关系,被联系实体关系的主码(作为外来码)和联系本身的属性作为该关系的属性,被联系实体关系的主码组成其复合主码。

借阅关系图书增购登记关系增购关系3.1.2 转化的逻辑模型表四:管理员表表五:出版表表六:借阅表表七:增购登记表表八:增购表3.1.3 逻辑模型的优化把优化为3.2 具体逻辑模型设计4 数据库保护设计4.1设计表间关系1)“书籍表”和“出版社表”之间有出版联系,通过“出版社名称”字段相关联2)“读者表”和“书籍表”之间有借阅联系,通过“借书证号”、“书号”字段相关联3)“读者表”和“管理员表”之间有增购登记联系,通过“借书证号”、“管理员号”字段相关联4)“出版社表”和“管理员表”之间有增购联系,通过“出版社名称”、“管理员号”字段相关联4.2完整性设计4.2.1书籍表(1)实体完整性设计:主关键字“书号”非空值、唯一;(2)参照完整性设计:无参照完整性设计;(3)用户定义完整性设计:“书名”非空值;“数量”取值范围0到500;“书籍种类”非空值;“存放位置”非空值、取值为图书馆1楼、图书馆2楼、图书馆3楼、图书馆4楼、图书馆5楼;4.2.2读者表(1)实体完整性设计:主关键字“借书证号”非空值、唯一;(2)参照完整性设计:无参照完整性设计;(3)用户定义完整性设计:“姓名”非空;4.2.3出版社表(1)实体完整性设计:主关键字“出版社名”非空值、唯一;(2)参照完整性设计:无参照完整性设计;(3)用户定义完整性设计:“电话”非空值、;“地址”非空值、;“邮编”非空值;4.2.4管理员表(1)实体完整性设计:主关键字“管理员号”非空值、唯一;(2)参照完整性设计:无参照完整性设计(3)用户定义完整性设计:“管理员名”非空值;4.2.5出版表(1)实体完整性设计:主关键字“书序号”非空值、唯一;(2)参照完整性设计:“出版表”的“书号”参照“书籍表”的“书号”当修改被参照记录的主关键字时,级联修改参照纪录的外部关键字值;“出版表”的“出版社名”参照“出版社表”的“出版社号”当修改被参照记录的主关键字时,级联修改参照纪录的外部关键字值;(3)用户定义完整性设计:无用户定义完整性设计;4.2.6借阅表(1)实体完整性设计:主关键字“借书证号”“书号”;(2)参照完整性设计:“借阅表”的“借书证号”参照“读者表”的“借书证号”当修改被参照记录的主关键字时,级联修改参照纪录的外部关键字值;“借阅表”的“书号”参照“书籍表”的“书号”当修改被参照记录的主关键字时,级联修改参照纪录的外部关键字值;(3)用户定义完整性设计:“借书日期”非空值、日期时间类型;“还书日期”非空值、日期时间类型;4.2.7增购登记表(1)实体完整性设计:主关键字“借书证号”、“管理员号”;(2)参照完整性设计:“增购登记表”的“借书证号”、“管理员号”分别参照“读者表”的“借书证号”和“管理员表”的“管理员号”当修改被参照记录的主关键字时,级联修改参照纪录的外部关键字值;(3)用户定义完整性设计:“所缺书名”非空值、字符类型、字段长度30;“登记号”非空值、字符类型、字段长度5;4.2.8增购表(1)实体完整性设计:主关键字“管理员号”和“出版社名”;(2)参照完整性设计:“增购表”的“管理员号”和“出版社名”分别参照“管理员表”的“管理员号”和出版社表的“出版社名”;当修改被参照记录的主关键字时,级联修改参照纪录的外部关键字值;(3)用户定义完整性设计:“增购书名”非空值、字符类型、字段长度30;“数量”整数型,取值范围0到500;“日期”非空值、日期时间类型;5 数据库实现5.1 建立数据库create database 图书馆管理数据库on(name=图书馆管理数据库,filename='D:\数据库.mdf',size=10,maxsize=50,filegrowth=5)log on(name=图书馆管理数据库_log,filename='D:\数据库.ldf',size=5mb,maxsize=25mb,filegrowth=5mb)create schema 图书馆管理数据库Create table图书馆管理数据库.书籍表(书号char(20) not null primary key ,书名char(30) not null,数量tinyint check (数量between 0 and 500) default null,书籍类型char(16) not null,存放位置char(10) not null check (存放位置in('图书馆楼','图书馆楼' ,'图书馆楼' ,'图书馆楼' ,'图书馆楼')))、Create table图书馆管理数据库.读者表(借书证号 char(11) not null primary key , 姓名 char(10) not null,单位 char(50))5.2.3出版社表Create table 图书馆管理数据库.出版社表(出版社名char(30) not null primary key , 电话char(15) not null,地址char(60) not null,邮编char(6) not null)5.2.4管理员表Create table 图书馆管理数据库.管理员表(管理员号char(10) not null primary key , 管理员名char(10) not null)create table 图书馆管理数据库. 出版表(书序号 char(10) not null primary key ,书号char(20) foreign key references 图书馆管理数据库.书籍表 on deiete set null on up date cascade,出版社名 char(30) foreign key references 图书馆管理数据库.出版社表 on deiete set null on up date cascade,create table 图书馆管理数据库.借阅表(借书证号char(11) foreign key references 图书馆管理数据库. 读者表 on update cascade,书号char(20) foreign key references 图书馆管理数据库. 书籍表 on update cascade,借书日期 datetime not null,还书日期datetime not null,primary key (借书证号,书号))5.2.7增购登记表create table 图书馆管理数据库.增购登记表(借书证号char(11) foreign key references 图书馆管理数据库.读者表on update cascade,管理员号char(10) foreign key references 图书馆管理数据库.管理员表 on update cascade,所缺书名 char(30) not null,登记号char(5) not null,primary key (借书证号,管理员号))5.2.8增购表create table 图书馆管理数据库.增购表(管理员号char(10) foreign key references 图书馆管理数据库.管理员表on update cascade,出版社名char(30) foreign key references 图书馆管理数据库.出版社表on update cascade,增购书名 char(20) not null,日期datetime not null,primary key (管理员号,出版社名))5.3 数据库的表间关联6 感想与体会数据库是信息管理系统的基础。

相关主题