图书借阅管理系统子系统

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据库系统实验》

课程设计报告

一.开发环境与开发工具

JAVA集成开发工具,Win7下SQL Server

二.系统需求分析(5分)

系统数据字典

本系统的设计模拟一般学校特别是高校的图书借阅管理容,经过充分地系统调研,发现本系统应包括图书馆信息、图书信息、图书室信息、学生信息、学生借书证信息等需管理信息。进一步还发现信息实体间需管理信息有:借书证办理、图书存放管理、学生借阅图书前查询、学生凭借借书证借书管理、学生借书后查询等容。

①能全面管理学校教学相关的各类主体、如图书馆信息、图书信息、图书室信息、学生信息、学生借书证信息等;

②通过使用计算机能方便地维护(包括插入、删除、修改)各信息表;

③能组合查询基于某信息表的所需信息;

④能方便地实现基于多个表的连接查询;

⑤能方便地实现基于单个或多个表的统计功能;

⑥需要时能及时进行输出与打印;

⑦系统应具有网络多用户功能,具有用户管理功能,对分等级用户提供相应系统功能;三.功能需求分析(5分)

系统功能模块图

①在数据库服务器如SQL Server中,建立个关系模式对应的库表,并确定主建、

索引、参照完整性、用户自定义完整性等。

②能对各库表进行输入、修改、删除、添加、查询、打印等基本操作。

③新生入学,能根据学生信息办理各位学生的借书证,并能对本校的研究生作必

要调整。

④能明细实现如下各类查询:

·能查询可借阅图书的详细情况。

·能查询某学生的借书情况。

·能查询图书的借出情况。

⑤能统计实现如下各类查询:

·能统计出完成一次借阅任务后已借出书本总数和可借书量。

·能统计某图书的总借出量与库存量。

·能统计出某学生的借书总量、当天为止总罚金等。

⑥学生查询图书情况后即可借阅所需图书,对于未借出的图书可以预约。

⑦能分析出某学生借书是否已超期(须付清罚款金额后才可借书)。

⑧用户管理功能,包括用户登录、注册新用户更改用户密码等功能。

⑨其他读者认为子系统应有的查询、统计功能。

四.系统设计(15分)

数据概念结构设计(包括数据流程图、系统ER图)(5分)

图书借阅管理子系统顶层数据流图

图书借阅管理子系统中间层数据流图

图书借阅管理子系统底层数据流图

反映教学管理系统的整体E-R图

数据库关系模式设计(5分)

按照实体-联系图转化为关系模式的规则,本系统的E-R图可转化为如下约10个关系模式(另外有两个辅助关系,共12个):

·图书馆(馆编号,馆名,馆长工号,成立日月,地点,)

·借书证(借书证号,学生,学生系别,专业,借书上限书)

·学生(学号,类别,学生,性别,出生日起,入校日期,,家庭住址,备注,专业,班号)

·图书(图书编号,图书名称,出版日期,图书)

·图书室(房间号,书架号,图书总量)

·借书(借书证号,图书编号,借出日期,归还日期)

·存放(图书编号,房间号,书架号)

·办理(学号,类别,借书证号,办理日期)

·借阅前查询(图书编号,图书名称,出版日期,,房间号,借阅情况)

·借书后查询(图书编号,借书证号,借出时间,需归还时间)另需辅助表:

·用户表(用户编号,用户名,口令,等级)

·日志表(序号,操作用户号,操纵类别,操作命令,操作日期时间)

借书证&学生→读者信息

·读者信息(读者编号,读者,性别,学院,专业,班级,学制,年级,情况,需借数量,借书数量)

图书&借书→图书信息

·图书信息(图书编号,图书名称,图书状态,读者编号,借阅日期,,出版时间)·借阅信息(图书名称,读者编号,日期)

·用户信息(用户明,密码)

数据库物理结构设计(5分)

根据已设计出的关系模式及各模式的完整性要求,现在就可以在SQL Server数据库系统中行实现这些逻辑结构。下面是创建数据及其表结构的Transact-SQL命令(SQL Server 中的SQL命令)

CREATE DATABASE TSJY;

go

USE TSJY;

CREATE TABLE buser(

user_id varchar(50)NOT NULL PRIMARY KEY CLUSTERED(user_id),

user_name varchar(50)NULL,

sex varchar(50)NULL,

dept varchar(50)NULL,

speciality varchar(50)NULL,

class varchar(50)NULL,

esys varchar(50)NULL,

grade varchar(50)NULL,

situation varchar(50)NULL,

sum bigint(8)default(0),

inhand bigint(8)default(0)

)

book(book_id,book_name,status,user_id,borrow_date,press,year)

CREATE TABLE book(

book_id varchar(50)NOT NULL PRIMARY KEY CLUSTERED(book_id),

book_name varchar(50)NULL,

status varchar(50)NULL,

user_id

varchar(50)

NULL

CONSTRAINT

BS_F

FOREIGN

KEY

REFERENCES

buser(user_id),

borrow_date varchar(50)NULL,press varchar(50)NULL,year varchar(50)NULL,)

CREATE TABLE reserve(

book_name varchar(50)NULL,CONSTRAINT BO_F FOREIGN KEY REFERENCES book(book_na me),

user_id varchar(50)NULL CONSTRAINT BS_F FOREIGN KEY REFERENCES buser(user_id),date

相关文档
最新文档