湖南工业大学本科毕业设计(论文)
第3章 系统设计
3.1数据库设计
3.1.1 数据库设计概述
我用的数据库是sql sever 2005,数据库的设计是整个设计的基石,只有基石稳固了才能做出一个好的设计。数据库中的数据是一切操作的基础,数据库设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是范式,范式是符合某一种级别的关系模式的集合。一般人们设计数据库遵循第三范式。即:数据库表中不包含已在其他表中包含的非主关键字信息。采用范式减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度。
整个系统所包含的的信息有:图书信息、读者信息、图书类别信息、借阅信息、角色信息。可将这些信息抽象为下列系统所需要的数据项和数据结构:
1.图书信息:图书编号、图书名称、图书类别编号、作者、出版社、出版日期、图书数量。(图书编号为主键,图书类别编号为外键)
2.读者信息:读者编号、读者姓名、性别、学院、专业、年龄、地址、电话、密码、角色编号。(读者编号为主键,角色编号为外键)
3.图书类别信息:类别编号、类别名称。(类别编号为主键) 4.借阅信息:借阅编号、读者编号、图书编号、借阅数量、出借日期、归还日期。(借阅编号为主键,读者编号和图书编号为外键)
5.角色信息:角色编号、角色名称。(角色编号为主键)
3.1.2 图书信息表结构设计
图书信息表主要用于存储图书馆中的图书的相关信息,图书的相关信息是由管理员添加完善,其中超级管理员也可以添加完善,此表主要是对于读者进行查询图书信息,以及管理员或超级管理员对图书信息的增、删、改、查等操作。图书具体信息见下表:
序号 1 2 3 列名 b_id b_name t_id 数据类型 int varchar int 长度 50 50 50 小数位 标识 0 0 0 √ 12
主键 √ 默认值 Check约束 主键 外键 字段说明 图书编号 图书名称 类别 湖南工业大学本科毕业设计(论文)
4 5 6 7 b_author b_press b_date b_number varchar varchar datetime int 50 200 50 0 0 0 0 作者 出版社 出版日期 图书数量 3.1.3 读者信息表结构设计
图书信息表主要用于图书馆存储读者的相关信息。读者的信息是由管理员或者超级管理员添加完善的,但是管理员不能对管理员或者超级管理员的信息做修改。只有超级管理员才能对读者和管理员的权限做修改,管理员可以对普通用户进行增、删、改、查等操作,普通用户可以对普通用户、管理员、超级管理员的信息进行查询,但不能查询其密码。读者具体信息见下表:
序号 1 2 3 4 5 6 7 8 9 10 列名 r_name r_id r_sex r_college r_major r_age r_address r_phone r_pass j_id 数据类型 varchar int char varchar varchar int varchar nchar nchar int 长度 50 10 10 200 200 255 50 50 10 小数位 标识 主键 0 0 0 0 0 0 0 0 0 0 √ √ 默认值 Check约束 主键 外键 字段说明 姓名 编号 性别 学院 专业 年龄 地址 电话 密码 角色编号
3.1.4 图书类别信息表结构设计
图书类别信息主要用于图书馆存储图书类别的相关信息,图书类别的相关信息比较少,只有类别编号和类别名称,它是图书信息的子表,图书类别表是由管理员或超级管理员添加完善,此表主要是读者查询图书类别,管理员或者超级管理员对图书类别进行增、删、改、查等操作。图书类别具体信息见下表:
序号 1 2 列名 t_name t_id 数据类长度 型 varchar 50 int 50 小数位 标识 主键 0 0 √ √ 默认值 Check约束 主键 字段说明 类别名称 类别编号
3.1.5图书借还信息表结构设计
图书借还信息表主要用于图书馆存储图书的借还的相关信息。输入读者编号可以查询图书的借阅情况,此表主要是对于管理员或者超级管理员查询
13
湖南工业大学本科毕业设计(论文)
读者图书的借还情况。并且方便读者借阅和归还图书。图书借还信息表的具体情况见下表:
序号 1 2 3 4 5 6 列名 o_id r_id b_id o_number o_borrow o_revent 数据类型 int int int int datatime datetime 长度 10 10 10 小数位 标识 0 0 0 0 0 0 √ 主键 √ 默认值 1 1 1 0 Check约束 主键 外键 外键 字段说明 借阅编号 读者编号 书籍编号 借阅数量 出借日期 归还日期
3.1.6角色信息表结构设计:
角色表是用于超级管理员管理各个职位的表,该表是由角色编号和角色名称组成的,1代表普通用户,2代表管理员,3代表超级管理员。角色编号是默认递增的,此表方便超级管理员管理各个职位的权限。角色信息表的具体情况见下表:
序列名 号 1 j_id 2 j_name 数据类型 int varchar 长度 10 50 小数位 0 0 标识 √ 主键 √ 默认值 1 Check约束 主键 字段说明 编号 角色名称
3.1.6数据库表间关系图
实现图书管理系统的表由如下几个表组成:BookMessage(图书信息表),ReaderMessage(读者信息表),BookType(图书类别表),BorrowMessage(借还信息表),role(角色信息表),他们之间的关系如下:
14
湖南工业大学本科毕业设计(论文)
3.2 系统总体结构设计
3.2.1图书管理系统设计
图书管理系统
读者信息管理模块 图书类别管理模块 图书借还管理模块 系统管理模块 图书信息管理模块
图书管理系统包括了图书信息管理模块、读者信息管理模块、图书类别管理模块、图书借还信息管理模块、系统管理模块。
3.2.2图书信息管理模块
15