图书管理系统数据库设计MYSQL实现样本Word格式文档下载.docx
《图书管理系统数据库设计MYSQL实现样本Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《图书管理系统数据库设计MYSQL实现样本Word格式文档下载.docx(24页珍藏版)》请在冰豆网上搜索。
数据流图
二、系统功能设计
画出系统功能模块图并用文字对各功能模块进行详细介绍。
系统功能模块图:
三、数据库设计方案图表
1、系统E-R模型
总体E-R图:
精细化的局部E-R图:
学生借阅-归还E-R图:
管理员E-R图:
2、设计表
给出设计的表名、结构以及表上设计的完整性约束。
student:
列名
数据类型
是否为空/性质
说明
stu_id
int
notnull/PK
标明学生唯一学号
stu_name
varchar
notnull
学生姓名
stu_sex
学生性别
stu_age
学生年龄
stu_pro
学生专业
stu_grade
学生年级
stu_integrity
notnull/default=1
学生诚信级
book:
book_id
notnull/PK
唯一书籍序号
book_name
书籍名称
book_author
书籍作者
book_pub
书籍出版社
book_num
int
notnull
书籍是否在架上
book_sort
书籍分类
book_record
datatime
null
书籍登记日期
book_sort:
sort_id
类型编号
sort_name
类型名称
borrow:
存储学生的借书信息
student_id
学生编号
varchar
书籍编号
borrow_date
借书时间
expect_return_date
datetime
预期归还时间
return_table:
存储学生的归还信息
return_date
实际还书时间
ticket:
存储学生的罚单信息
over_date
超期天数
ticket_fee
float
处罚金额
manager:
manager_id
管理员编号
manager_name
管理员姓名
manager_age
管理员年龄
manager_phone
管理员电话
3、设计索引
给出在各表上建立的索引以及使用的语句。
1.为stu_id创立索引,升序排序
sql:
createindexindex_idonstudent(stu_idasc);
2.为stu_name创立索引,而且降序排序
altertablestudentaddindexindex_name(stu_name,desc);
插入索引操作和结果如下所示:
mysql>
createindexindex_idonstudent(stu_idasc);
QueryOK,0rowsaffected
Records:
0Duplicates:
0Warnings:
0
altertablestudentaddindexindex_name(stu_namedesc);
1.为book_id创立索引,升序排列
createindexindex_bidonbook(book_id);
2.为book_record创立索引,以便方便查询图书的登记日期信息,升序:
createindexindex_brecordonbook(book_record);
插入索引的操作和结果如下所示:
createindexindex_bidonbook(book_id);
createindexindex_brecordonbook(book_record);
1.为stu_id和book_id创立多列索引:
createindexindex_sid_bidonborrow(stu_idasc,book_idasc);
createindexindex_sid_bidonborrow(stu_idasc,book_idasc);
createindexindex_sid_bidonreturn_table(stu_idasc,book_idasc);
createindexindex_sid_bid_ronreturn_table(stu_idasc,book_idasc);
1.为stu_id和book_id创立多列索引:
createindexindex_sid_bidonticket(stu_idasc,book_idasc);
createindexindex_sid_bidonticket(stu_idasc,book_idasc);
1.为manager_id创立索引:
createindexindex_midonmanager(manager_id);
createindexindex_midonmanager(manager_id);
4、设计视图
给出在各表上建立的视图以及使用的语句。
1.在表student上创立计算机专业(cs)学生的视图stu_cs:
createviewstu_csas
select*
fromstudent
wherepro=‘cs’;
操作和结果:
wherestu_pro='
cs'
;
2.在表student,borrow和book上创立借书者的全面信息视图stu_borrow:
createviewstu_borrowas
selectstudent.stu_id,book.book_id,student.stu_name,book.book_name,borrow_date,adddate(borrow_date,30)expect_return_date
fromstudent,book,borrow
wherestudent.stu_id=borrow.stu_idandbook.book_id=borrow.book_id;
3.创立类别1的所有图书的视图cs_book:
createviewcs_bookas
frombook
whereboo