2024年3月20日发(作者:)
图书管理系统数据库设计
一、系统概述
1、系统简介
图书管理是每个图书馆都需要进行的工作。一个设计良好的图书管理系统数据库能够给图
书管理带来很大的便利。
2、需求分析
图书管理系统的需求定义为:
1.学生可以直接通过借阅终端来查阅书籍信息,同时也可以查阅自己的借阅信息。
2.当学生需要借阅书籍时,通过账号密码登陆借阅系统,借阅系统处理学生的借阅,同时修改
图书馆保存的图书信息,修改被借阅的书籍是否还有剩余,同时更新学生个人的借阅信息。
3.学生借阅图书之前需要将自己的个人信息注册,登陆时对照学生信息。
4.学生直接归还图书,根据图书编码修改借阅信息
5.管理员登陆管理系统后,可以修改图书信息,增加或者删除图书信息
6.管理员可以注销学生信息。
通过需求定义,画出图书管理系统的数据流图:
数据流图
二、系统功能设计
画出系统功能模块图并用文字对各功能模块进行详细介绍。
系统功能模块图:
三、数据库设计方案图表
1、系统E-R模型
总体E-R图:
精细化的局部E-R图:
学生借阅-归还E-R图:
管理员E-R图:
2、设计表
给出设计的表名、结构以及表上设计的完整性约束。
student:
列名
stu_id
stu_name
stu_sex
stu_age
stu_pro
stu_grade
stu_integrity
book:
列名
book_id
book_name
book_author
数据类型
int
varchar
varchar
是否为空/性质
not null / PK
not null
not null
说明
唯一书籍序号
书籍名称
书籍作者
数据类型
int
varchar
varchar
int
varchar
varchar
int
是否为空/性质
not null /PK
not null
not null
not null
not null
not null
not
null/default=1
说明
标明学生唯一学号
学生姓名
学生性别
学生年龄
学生专业
学生年级
学生诚信级
book_pub
book_num
book_sort
book_record
book_sort:
列名
sort_id
sort_name
列名
student_id
book_id
borrow_date
varchar
int
varchar
datatime
数据类型
varchar
varchar
数据类型
varchar
varchar
datatime
not null
not null
not null
null
是否为空/性质
not null / PK
not null
是否为空/性质
not null / PK
not null / PK
null
null
是否为空/性质
not null / PK
not null / PK
null
null
是否为空/性质
not null / PK
not null / PK
null
null
是否为空/性质
not null / PK
not null
not null
not null
书籍出版社
书籍是否在架上
书籍分类
书籍登记日期
说明
类型编号
类型名称
说明
学生编号
书籍编号
借书时间
预期归还时间
说明
学生编号
书籍编号
借书时间
实际还书时间
说明
学生编号
书籍编号
超期天数
处罚金额
说明
管理员编号
管理员姓名
管理员年龄
管理员电话
borrow:存储学生的借书信息
expect_return_date datetime
return_table:存储学生的归还信息
列名
student_id
book_id
borrow_date
return_date
列名
student_id
book_id
over_date
ticket_fee
manager:
列名
manager_id
manager_name
manager_age
manager_phone
数据类型
varchar
varchar
varchar
varchar
数据类型
varchar
varchar
datetime
datatime
数据类型
varchar
varchar
int
float
ticket:存储学生的罚单信息
3、设计索引
给出在各表上建立的索引以及使用的语句。
student:
1.为stu_id创建索引,升序排序
sql:create index index_id on student stu_id asc ;
2.为stu_name创建索引,并且降序排序
sql:alter table student add index index_name stu_name, desc ;
插入索引操作和结果如下所示:
mysql> create index index_id on student stu_id asc ;
Query OK, 0 rows affected
Records: 0 Duplicates: 0 Warnings: 0


发布评论