资源描述:
《课程设计(论文)-图书馆数据库管理系统》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、目录目录1第1章设计内容与要求21.1设计内容21.2设计要求21.3功能要求2第2章设计说明32.1设计ER图32.1.1ER图图解32.1.2E
2、R图32.2问题描述42.3具体设计实现42.3.1定义数据项的含义和取值42.3.2数据库的建立与分析52.3.3数据初始化62.3.4物理设计——数据库功能的实现92.3.5数据库安全维护112.3.6数据库的选择语句12第3章总结133.1功能上的不足133.2附加功能133.3收获133.4心得体会14结论15参考文献1616第1章设计内容与要求1.1设计内容设计一个图书馆数据库管理系统,根据需求分析设
3、计合理的数据库,要在该数据库中实现相关的功能,包括模式的规范化程度,表的主键、外键、约束、缺省、触发器等,及安全策略等。1.2设计要求详见程序设计基础课程设计任务书。1.3功能要求1、需求分析阶段l定义数据项的含义和取值2、概念结构设计阶段l画出实体模型E-R图3、逻辑结构设计阶段l将实体模型转化为关系模型l给出每个关系的主关键字和函数依赖集l分析你所设计的关系数据库模式是否属于3NF4、物理设计阶段l确定所有字段的名称、类型、宽度、小数位数及完整性约束l确定数据库及表的名称及其组成l确定索引文件和索引关键字5、数据库安全及维护设计阶段l设计一个适合的数据库安全
4、策略(用户身份认证、访问权限、视图)6、实施阶段l要求所有操作必须在查询分析器中用SQL语句或系统存储过程完成。16第2章设计说明2.1设计ER图2.1.1ER图图解在该ER图中,每个人可借多种书,一种书可为多个人所借;书和读者的关系为多对多。一个出版社可出版多种书籍,但同一本书仅为一个出版社出版,书本和出版社的关系为一对多。图中管理员和书本,管理员和读者都是多对多的关系。2.1.2E
5、R图读者借书证号性别姓名单位借阅借出日期还书日期续借次数图书图书号书名数量存放位置出版出版社出版社名电报编码电话邮编地址管理员注册读者权限职工号姓名性别权限级别登记图2.1
6、162.2问题描述某个图书借阅管理数据库需要如下信息:图书:图书号、书名、数量、存放位置。读者(借书人):借书证号、姓名、单位、借书日期、还书日期。出版社:出版社名、电报编号、电话、邮编、地址。其中,每个人可借多种书,一种书可为多个人所借;一个出版社可出版多种书籍,但同一本书仅为一个出版社出版。2.3具体设计实现在sql2000中创建图书管理系统,创建语句为:createdatabase图书管理系统。2.3.1定义数据项的含义和取值1、管理员信息:图2.22.读者信息:图2.33、书本信息:图2.4164.出版社信息:图2.55,借阅信息:图2.66.出版信息:
7、图2.72.3.2数据库的建立与分析1.管理员信息:createtableAdministrator(Anointprimarykey,Anamechar(30),Asexchar(10),Aprivilegechar(20));其中管理员的工作证号为主键,不允许为空。2.读者信息:createtablereader(Rnointprimarykey,Rnamechar(50),Rsexchar(20),check(Rsexin('男','女')),Rdeptvarchar(50));其中读者编号为主键,不允许为空,并且读者性别有一个约束,就是只允许读者性别为’
8、男’或者为’女’,出现其他的都会报错。3、书本信息:createtablebook(Bnointprimarykey,Bnamechar(50),Bnumint,check(Bnum>1),Baddressvarchar(100));其中图书编号为主键,不允许为空,并且规定图书的数量必须大于一,因为图书的数量如果为空的话,就没有实际的意义了。4.出版社信息:createtablepublisher(Pnamechar(50)primarykey,Pnumint,Pphoneint,Email16varchar(50),Paddressvarchar(100));
9、其中出版社的名字为主键,不能重复,也不允许为空。5,借阅信息:createtableborrow(Bnointnotnull,Rnointnotnull,lenddatedatetime,renturndatedatetime,xujieint,check(xujie<3),);其中读者编号和图书编号为外主键,不允许为空。其中有一个约束,即续借图书的次数不能大于3次。6.出版信息:createtablechuban(Bnoint,Pnamechar(50)primarykey(Bno,Pname));因为书本和出版商的关系是一对多,所以在该关系中只需要把两个表中
10、的主键放里面即可。但是都