数据库实验报告.docx

上传人:b****4 文档编号:3029166 上传时间:2022-11-17 格式:DOCX 页数:18 大小:880.89KB
下载 相关 举报
数据库实验报告.docx_第1页
第1页 / 共18页
数据库实验报告.docx_第2页
第2页 / 共18页
数据库实验报告.docx_第3页
第3页 / 共18页
数据库实验报告.docx_第4页
第4页 / 共18页
数据库实验报告.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

数据库实验报告.docx

《数据库实验报告.docx》由会员分享,可在线阅读,更多相关《数据库实验报告.docx(18页珍藏版)》请在冰豆网上搜索。

数据库实验报告.docx

数据库实验报告

中南大学

 

数据库实验报告

 

题目SQLserver数据库支持下的图书馆管理系统

学号

学生姓名

指导教师

学院

专业班级

完成时间

 

一、前言

数据库技术兴起于二十世纪六七十年代,其主要目的是有效地管理和存取大量的数据资源.数据库技术主要研究如何存储,使用和管理数据.近年来,数据库技术和计算机网络技术的发展相互渗透,相互促进,已成为当今计算机领域发展迅速,应用广泛的两大领域数据库技术应用广泛,如各大主流网站的海量的用户信息,图片视频信息就必须储存在数据库中。

最近报道的CSDN网站、天涯论坛等互联网站点数量巨大的用户信息被曝光,就与CSDN等网站数据库系统安全性不够有关。

鉴于数据库技术的重要性,作为一名自动化专业的学生,有必要掌握这一门技术。

在为期六周的数据库学习过程中,通过把SQLserver2008数据库与用Delphi7编写的应用程序结合起来,我做出了一个小型的图书管理系统,可以实现图书管理的基本功能,主要功能有:

查询图书、借阅归还图书、用户管理、图书的管理等。

初步掌握了数据的基本知识,以及数据库的使用,数据库与编程工具(delphi)的连接等知识。

二、需求分析和系统功能设计

2.1需求分析

信息化时代,要求方方面面的信息化。

图书馆,作为学生老师的借阅图书、获取知识的重要场所,如果完全采用采用人工的方式对读者和图书等进行管理,效率低下,浪费人力物力,而且容易出现各种错误。

因此有必要对图书馆实行信息化管理。

这就需要一个客户端,在客户端上,各个用户可以进行相应的操作,管理员可以对图书进行管理,对用户信息进行管理,同时进行借还书管理。

读者分为两类,学生以及老师,他们需要进行图书查询,个人信息查询修改等操作。

2.2系统功能设计

Ø登陆界面可以进行的操作

选择登陆人员的类别,输入账号和密码以后可以登录系统,使用系统各项功能。

如果有读者没有注册,点击登陆界面的新用户注册标签,可以进行新用户的注册,注册以后用户可以使用系统的各项功能。

Ø管理员界面可以进行的操作

图书管理模块:

由于图书馆的书一般为只进不出,一般只需要增加新书以及查看图书信息即可,因此有新增图书和分类查看图书信息两个功能。

录入图书以后可以点击继续录入。

读者管理模块:

可以进行读者的增加,读者帐号的注销,已有读者的信息修改,修改前可以查看某用户的旧信息,然后再进行修改。

该模块还包括所有读者信息的查看功能。

借还书管理模块:

输入读者的证号以及图书编号实现借书和还书,其中学生和老师可借的图书数量有别,学生可以借阅五本,老师可以借阅十本书,超过借阅数量以后不能借书;还书时可以从数据库中调出书籍借阅以及归还时间,并且显示当前时间。

Ø学生界面可以进行的操作

图书查询模块:

学生可以通过两种方式进行图书的查询,按图书编号进行查询,或者按图书名进行查询,其中按图书名进行查询时采用模糊查询方式,只要输入图书名称的关键字,含有该关键字的图书都会在表格中显示出来。

信息查询模块:

在该模块中,学生基本信息(姓名,读者证号,用户类别)可以直接显示

修改个人密码模块:

为了防止读者随意修改自己信息,只提供给读者修改个人密码的功能。

Ø老师界面可以进行的操作

图书查询模块:

老师可以通过两种方式进行图书的查询,按图书编号进行查询,或者按图书名进行查询,其中按图书名进行查询时采用模糊查询方式,只要输入图书名称的关键字,含有该关键字的图书都会在表格中显示出来。

信息查询模块:

在该模块中,老师基本信息(姓名,读者证号,用户类别)可以直接显示

修改个人密码模块:

为了防止读者随意修改自己信息,只提供给读者修改个人密码的功能。

三、系统功能图及数据结构关系设计

3.1系统功能图

3.2数据库结构关系设计

3.2.1概念模型

Ø图书实体

Ø读者实体

读者

类别

姓名

性别

读者证号

3.2.2E-R图

3.2.3关系模型

一个读者证号可能对应借阅信息表中多条信息,一个读者可能借阅多本图书,一本图书也可能被多个人借阅。

3.2.4表(关系)的设计

根据图书馆里系统功能的需要,该数据库需要设计四张表,图书信息表,读者信息表,借阅信息表,以及登录信息表;

图书信息表存储图书基本信息,读者信息表存储读者信息,借阅信息表存储借阅信息,登录信息表存储读者、管理员的帐号、密码、类别等信息,实现对不同人员操作的限制。

Ø图书信息表

字段名

数据类型

约束条件

图书编号

Varchar(10)

主键

书名

Varchar(30)

Notnull

作者

Varchar(10)

Notnull

出版社

Varchar(30)

Notnull

出版日期

Varchar(4)

Notnull

页码

smallint

Notnull

图书类别

Varchar(10)

Notnull

总量

Tinyint

Notnull

借出量

tinyint

Ø读者信息表

字段名

数据类型

约束条件

读者编号

Varchar(10)

主键

姓名

Varchar(10)

Notnull

性别

Char

(2)

男或女notnull

类别

Varchar(10)

学生或教职工notnull

Ø借阅信息表

字段名

数据类型

约束

读者证号

Varchar(10)

外键(读者信息表读者证号)

借阅书名

Varchar(30)

Notnull

图书编号

Varchar(10)

外键(图书信息表图书编号)

借阅时间

Date

归还时间

date

Unique(读者证号,图书编号)

Ø登录信息表

字段名

数据类型

约束

帐号

Varchar(10)

主键

密码

Varchar(10)

Notnull

用户类别

Varchar(10)

Notnull

四、系统各模块运行截图

Ø系统登录界面

Ø新用户注册界面

Ø管理员添加新书界面

Ø管理员添加用户

Ø管理员修改用户信息

 

Ø管理员查看所有用户信息

Ø管理员办理借书手续界面

Ø管理员办理借书手续

Ø读者查询馆藏图书界面

 

Ø读者查询个人信息界面

 

Ø读者修改个人密码界面

 

五、部分模块代码

Ø登陆模块

procedureTloginForm.loginButton1Click(Sender:

TObject);

begin

adoquery1.Close;

adoquery1.SQL.Clear;

caselogincomboboxex1.ItemIndexof

0:

begin

adoquery1.SQL.Add('select*from登录信息表where帐号='''+loginedit1.text+'''and密码='''+loginedit2.Text+'''and用户类别=''学生''');

adoquery1.Open;

ifadoquery1.RecordCount=0then

showmessage('用户名或者密码错误,请重新输入')

else

begin

loginform.Close;

studentform.Show;

end;

end;

1:

begin

adoquery1.SQL.Add('select*from登录信息表where帐号='''+loginedit1.text+'''and密码='''+loginedit2.Text+'''and用户类别=''教职工''');

adoquery1.Open;

ifadoquery1.RecordCount=0then

showmessage('用户名或者密码错误,请重新输入')

else

begin

loginform.Close;

teacherform.show;

end;

end;

2:

begin

adoquery1.SQL.Add('select*from登录信息表where帐号='''+loginedit1.text+'''and密码='''+loginedit2.Text+'''and用户类别=''管理员''');

adoquery1.Open;

ifadoquery1.RecordCount=0then

showmessage('用户名或者密码错误,请重新输入')

else

begin

loginform.Close;

adminform.Show;

end;

end

else

begin

showmessage('请选择用户类别');

end;

end;

Ø借书办理模块

procedureTadminForm.Button10Click(Sender:

TObject);

begin

adoform.JHSBLQuery.Close;

adoform.JHSBLQuery.SQL.Clear;

adoform.JHSBLQuery.SQL.Add('select读者信息表.类别,借阅信息表.读者证号from借阅信息表,读者信息表where借阅信息表.读者证号='''+edit18.Text+'''and借阅信息表.读者证号=读者信息表.读者证号');

adoform.JHSBLQuery.Open;

if(adoform.JHSBLQuery.FieldByName('类别').AsString='学生')then

begin

if(adoform.JHSBLQuery.RecordCount=5)then

begin

showmessage('该读者借阅书籍已经达到上限(5本书),无法借书,请还书后再借书。

');

button12.Visible:

=true;

end

else

begin

adoform.JHSBLQuery.Close;

adoform.JHSBLQuery.SQL.Clear;

adoform.JHSBLQuery.SQL.Add('insertinto借阅信息表select读者信息表.读者证号,图书信息表.书名,图书信息表.图书编号,null,nullfrom图书信息表,读者信息表where读者证号='''+edit18.Text+'''and图书编号='''+edit19.text+'''');

adoform.JHSBLQuery.ExecSQL;

showmessage('成功添加信息!

');

end;

end

else

begin

if(adoform.JHSBLQuery.RecordCount=10)then

begin

showmessage('该读者借阅书籍已经达到上限(10本书),无法借书,请还书后再借书。

');

button12.Visible:

=true;

end

else

begin

adoform.JHSBLQuery.Close;

adoform.JHSBLQuery.SQL.Clear;

adoform.JHSBLQuery.SQL.Add('i

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1