资源预览内容
第1页 / 共15页
第2页 / 共15页
第3页 / 共15页
第4页 / 共15页
第5页 / 共15页
第6页 / 共15页
第7页 / 共15页
第8页 / 共15页
第9页 / 共15页
第10页 / 共15页
亲,该文档总共15页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
数据库课程设计报告 第 0 页,共 15 页 0 高级数据库系统(高级数据库系统() 课程设计报告课程设计报告 课课 题题: 图书馆管理系统图书馆管理系统 班班 级:级: 计科计科 N141N141 姓姓 名:名: xxxxxx 学学 号:号: 2 20000000000100000000001 数据库课程设计报告 第 1 页,共 15 页 1 目录目录 一课程设计目的 . 2 二系统设计 . 3 1.系统的功能分析 . 3 2.系统的功能模块设计 . 3 三课程设计说明书 . 3 1. 需求分析 . 4 (1)数据库需求分析 . 4 (2)图书馆管理流程图 . 4 2. 概要设计 . 4 四逻辑设计 . 6 1.图书信息表 . 6 五. 物理设计 . 7 六. 数据库建立 . 7 1.创建图书信息表 . 7 2.创建借阅表 . 8 3.用户信息表 . 9 4.借书卡信息表 . 9 七系统功能实施需要的语句 . 10 /*用户信息表*/ . 10 /*借阅表*/ . 11 /*图书信息表*/ . 11 /*视图*/ . 12 /*存储过程*/ . 12 END . 12 八数据库的完整性要求 . 12 九数据库安全设计 . 13 十课程设计心得体会 . 13 数据库课程设计报告 第 2 页,共 15 页 2 一课程设计目的 数据库课程设计是为数据库原理及应用课程而独立开设的实践性课程,对于巩固数据库知识,加强学生的实际动手能力和提高学生综合素质十分必要。通过本实验达到以下目的: 1. 熟练掌握一种数据库系统(如 MYSQL)的使用。 2. 熟练掌握一种数据库应用软件开发工具的使用。 3. 通过设计实际的数据库系统应用课题, 进一步熟悉数据库管理系统的操作技术, 提高动手能力,提高分析问题和解决问题的能力。 数据库课程设计报告 第 3 页,共 15 页 3 二系统设计 1.系统的功能分析 a. 图书信息管理: 图书信息的插入、修改,编号、书名、作者、价格、出版社、出版日期 、在馆状态。管理员用户可以对图书信息进行修改等操作。读者用户只可以查询图书信息。 b. 读者信息管理: 读者信息:账号、密码、读者编号、读者姓名、读者类别编号、联系电话。 管理员对读者信息进行增加、删除、查询及修改等操作。读者只能对读者信息进行查询操作。 c. 管理员信息管理。 管理员信息:管理员工作号、姓名、电话、备注。管理员对管理员信息的添加删除修改等操作。 d. 图书借阅管理。 借阅信息:管理员工作号、ISBN、读者编号、借书日期、还书日期。 2.系统的功能模块设计 对上述功能进行集中分析、分块,按照结构化程序设计的要求,得到功能模块图如图 2-2-1: 图书馆管理系统图书管理读者管理管理员管理借阅管理添加图书 注销图书 查询图书 读者信息查询 读者信息修改 读者信息添加 管理员信息查询 管理员信息添加 管理员信息修改 借阅信息修改 借阅信息添加 借阅信息查询 图 2-2-1 功能模块图 三课程设计说明书 数据库课程设计报告 第 4 页,共 15 页 4 1. 需求分析 (1)数据库需求分析 通过对图书馆管理过程的内容和数据流程分析,设计如下的数据项和数据结构。系统的实体集和实体属性: 图书信息:ISBN、书名、管理员工作号、作者、价格、出版社、出版日期 、在馆状态、简介、备注 。 读者信息:读者编号、读者姓名、读者性别、读者类别编号、联系电话、生效时间、失效时间、违章状况、已借数目、备注。 管理员信息:管理员工作号、姓名、性别、电话、住址、备注。 (2)图书馆管理流程图 图书借阅读者管理员读者类型管理归属管理 图 1-1 图书馆流程图 2. 概要设计 实体图及 E-R 图 根据 1)所要实现的功能设计,可能建立它们之间的关系,进而实现逻辑结构功能。 图书管理信息系统可以划分的实体有:书籍类别信息实体、读者信息实体、书籍信息实体、借阅记录信息实体,归还记录信息实体。用 E-R 图一一描述这些实体。 数据库课程设计报告 第 5 页,共 15 页 5 E-R 图 数据库课程设计报告 第 6 页,共 15 页 6 实体属性图 四逻辑设计 1.图书信息表 列名(字段名) 数据类型与长度 空否 说明 Bno char(8) 否 主键 Category char(10) 否 Title varchar(40) 否 Press varchar(30) 否 Year Int(11) 否 Author varchar(20) 否 Price Decimal(7,2) 否 total Int(11) 否 Stock Int(11) 否 2.借阅表 列名(字段名) 数据类型与长度 空否 说明 Cno char(7) 否 外键 Bno char(8) 否 外键 Borrow_date datetime 否 数据库课程设计报告 第 7 页,共 15 页 7 Return_date datetime 否 3.借阅卡表 列名(字段名) 数据类型与长度 空否 说明 Cno char(7) 否 主键 Name varchar(40) 否 Department varchar(30) 否 Type varchar(10) 否 4.用户表 列名(字段名) 数据类型与长度 空否 说明 Id char(10) 否 主键 Password varchar(10) 否 Username varchar(10) 否 Tle varchar(11) 否 Userflag Int(11) 否 五. 物理设计 数据库物理设计阶段的任务是根据具体计算机系统(DBMS 和硬件等)的特点,为给定的数据库模型确定合理的存储结构和存取方法。所谓的“合理”主要有两个含义:一个是要使设计出的物理数据库占用较少的存储空间,另一个对数据库的操作具有尽可能高的速度。主要体现在后者。 1.建立索引: 对 book 表在 bno 属性列上建立聚集索引。 对 card 表在 cno 上建立聚集索引。 2.存储结构 确定数据库的存储结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、日志、备份等的存储安排及存储结构,以及确定系统存储参数的配置。 将日志文件和数据库对象(表、索引等)分别放在不同的磁盘可以改进系统的性能。所以系统将日志文件和数据文件存放在不同磁盘上。 六. 数据库建立 1.创建图书信息表 数据库课程设计报告 第 8 页,共 15 页 8 CREATE TABLE book ( bno char(8) NOT NULL, category char(10) NOT NULL, title varchar(40) NOT NULL, press varchar(30) NOT NULL, year int(11) NOT NULL, author varchar(20) NOT NULL, price decimal(7,2) NOT NULL, total int(11) NOT NULL, stock int(11) NOT NULL, PRIMARY KEY (bno) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 2.创建借阅表 CREATE TABLE borrow ( cno char(7) NOT NULL, bno char(8) NOT NULL, borrow_date datetime NOT NULL, return_date datetime NOT NULL, KEY library_cno (cno), KEY library_bno (bno), CONSTRAINT library_bno FOREIGN KEY (bno) REFERENCES book (bno) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT library_cno FOREIGN KEY (cno) REFERENCES card (cno) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=InnoDB DEFAULT CHARSET=utf8 数据库课程设计报告 第 9 页,共 15 页 9 3.用户信息表 CREATE TABLE users ( id char(10) NOT NULL, password varchar(10) NOT NULL, username varchar(10) NOT NULL, tle varchar(11) DEFAULT NULL, userflag int(11) NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 4.借书卡信息表 CREATE TABLE card ( cno char(7) NOT NULL, 数据库课程设计报告 第 10 页, 共 15 页 10 name varchar(40) NOT NULL, department varchar(30) NOT NULL, type varchar(10) NOT NULL, PRIMARY KEY (cno) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 七系统功能实施需要的语句 /*用户信息表*/ /*添加记录*/ INSERT INTO library.users (id, password, username, tle, userflag) VALUES (0000000001, 1234, 张三, 15700000001, 1) INSERT INTO library.users (id, password, username, tle, userflag) VALUES (0000000002, 1234, 李四, 15700000002, 2) INSERT INTO library.users (id, password, username, tle, userflag) VALUES (0000000003, 1234, 王五, 15700000003, 3) /*修改记录*/ UPDATE library.users SET username = 赵六 WHERE users.id = 0000000001; /*删除记录*/ delete from users where id=0000000001 数据库课程设计报告 第 11 页,共 15 页 11 /*查询记录*/ select * from users /*借阅表*/ INSERT INTO library.borrow (cno, bno, borrow_date, return_date) VALUES (0000001, 003, 2017-06-15 16:38:15, ); /*修改记录*/ update borrow set return_date=2017-7-14 where bno=003 /*删除记录*/ delete from borrow where bno=003 /*查询记录*/ select * from borrow /*图书信息表*/ /*添加记录*/ INSERT INTO library.book (bno, category, title, press, year, author, price, total, stock) VALUES (001, 舞蹈, 极乐净土, bilibili 出版社, 2015, 98, 3.00, 3, 3) INSERT INTO library.book (bno, category, title, press, year, author, price, total, stock) VALUES (002, 曲谱, 九九八十一, bilibili 出版社, 2016, 洛天依, 2.00, 2, 1) IN
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号