ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:478.81KB ,
资源ID:4663611      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4663611.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库课程设计图书管理系统.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库课程设计图书管理系统.docx

1、数据库课程设计图书管理系统数据库课程设计-图书管理系统课 程 设 计 课程名称_ 数据库系统课程设计_题目名称 图书馆借阅管理系统 学生学院 计算机学院 专业班级 12级网络工程1班 学 号_*_学生姓名 丁 晗 指导教师_ 宋 玮_2014 年 1 月17日 评价标准分数比例(%)成绩论文论文结构包含:相关技术介绍、需求分析、概念结构设计、逻辑结构设计、数据库物理设计、数据库实施、系统测试方案和测试报告、系统的主要功能和使用说明、系统安装说明。要求论文完整、内容详细,格式规范。40程序系统运行正确;功能完善:有增、删、改、查功能,有基本的报表、查询、统计和输入、输出功能;工作量充分;系统实现

2、技术的难度。30数据库设计E-R图设计正确;数据库逻辑结构设计规范化;数据库物理设计合理。30总评成绩 优 良 中 及格 不及格总分一相关技术介绍1二需求分析1三概念结构设计2四逻辑结构设计3五数据库物理设计4六数据库实施7七课程设计的心得17八参考文献17一相关技术介绍1.1 C+Builder 6 介绍 C+ Builder是由Borland公司推出的一款可视化集成开发工具。C+ Builder具有快速的可视化开发环境:只要简单地把控件(Component)拖到窗体(Form)上,定义一下它的属性,设置一下它的外观,就可以快速地建立应用程序界面;C+ Builder内置了100多个完全封装

3、了Windows公用特性且具有完全可扩展性(包括全面支持ActiveX控件)的可重用控件;C+ Builder具有一个专业C+开发环境所能提供的全部功能:快速、高效、灵活的编译器优化,逐步连接,CPU透视,命令行工具等。它实现了可视化的编程环境和功能强大的编程语言(C+)的完美结合。1.2 Microsoft SQL Server 2005介绍 Microsoft SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 2005数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以

4、构建和管理用于业务的高可用和高性能的数据应用程序。Microsoft SQL Server 2005 数据引擎是该企业数据管理解决方案的核心。此外 Microsoft SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。二需求分析 2.1系统功能模块图登录和账号管理用户注册和注销借阅管理工作人员注册和注销读者注册和注销旧书淘汰新书入库还书借书账号管理系统登录 2.2系统的数据流程图图书管理员注册/注销还书借书用户信息库

5、存图书和借阅信息库存读者2.3系统功能设计(1)密码和权限管理(2)书目查询(3)借书和还书(4)读者的注册和注销(5)新书的入库和淘汰(6)账号管理(7)窗口管理三概念结构设计3.1 E-R图图书工作人员 n用户 1 注册和注销 借书读者 3.2属性描述读者:读者编号,读者姓名,用户名,密码,性别,工作地点,身份,已借书数量,备注;图书:书号,书名,作者,出版社,出版日期,索引书号,价格,状态(1为借出&0为在馆);图书馆工作人员:工作人员编号,姓名,登录密码;借书信息:借书单编号,读者编号,读者姓名,书号,书名,作者,借出日期,应还日期,工作人员编号; 四逻辑结构设计 4.1表 (1)读者

6、信息表名称数据类型是否为空说明ReaderID Char(7)Not null读者编号(主键)NameVarchar(8)Not null读者姓名UserNameVarchar(12)Not null用户名PasswordVarchar(12)密码GenderChar(2)性别UnitVarchar(50)工作单位IdentVarchar(10)身份NumberChar(2)Not null已借数量RemarkVarchar(500)备注 (2)图书信息表名称数据类型是否为空说明BookIDChar(5)Not null书号(主键)BookNameVarchar(50)Not null书名Ed

7、itorVarchar(8)作者PublisherVarchar(50)出版社PubDateDateTime出版日期BookIndexVarchar(20)索引书号Pricemoney价格StateChar(2)Not null状态(1.借出,0.在馆)(3)工作人员表名称数据类型是否为空说明LibrarianIDChar(5)Not null工作人员编号(主键)NameVarchar(50)Not null工作人员姓名(登录用户名)PasswordVarchar(12)Not null密码(4)借书信息表名称数据类型是否为空说明TaskIDInt Identity(1000,1)Not nu

8、ll借书信息编号(主键)ReaderIDChar(7)Not null读者编号ReaderNameVarchar(8)读者姓名BookIDChar(5)Not null书号BookNameVarchar(50)书名EditorVarchar(8)作者BorrowDateDateTimeNot null借出日期ReturnDateDateTimeNot null应还日期LibrarianIDChar(5)Not null工作人员编号五数据库物理设计5.1创建数据库 启动SQL Server 2005企业管理器,创建一个名为BookBorrowingManager的数据库5.2关系图5.3使用OD

9、BC连接数据库(1)点击“开始”-“搜索”,输入ODBC,打开ODBC数据源管理器,单击“添加”按钮,选择SQL Server。(2)单击“完成”按钮,出现下图所示界面。分别设置数据库的别名和运行SQL Server数据库的计算机名。(3)单击“下一步”按钮,在此界面设置数据库的登录方式,一种是使用网络ID放式,一种是使用Windows系统登录方式,此课设使用网络ID方式。 (4)单击“下一步”按钮,在新的界面选择相应的数据库。在此选择创建好的BookBorrowingManager数据库。 (5)单击“下一步”按钮,在出现的界面设置语言种类、日志文件等。单击“完成”按钮,出现数据库连接测试界

10、面。单击“测试”按钮,检查所创建的别名是否能成功连接数据库。成功则创建完毕,失败则返回检查。六数据库实施6.1创建数据库6.2执行SQL语句创建表 create table Reader ( ReaderID char(7) not null primary key, Name varchar(8) not null, UserName varchar(8) not null, Password varchar(12), Gender char(2), Unit varchar(50), Ident varchar(10), Number char(2) not null, Remark va

11、rchar(500);create table book( BookID char(5) not null primary key, BookName varchar(50) not null, Editor varchar(8), Publisher varchar(50), PubDate datetime, BookIndex varchar(20), Price money, state char not null);create table Librarian( LibrarianID char(5) not null primary key, Name varchar(50) no

12、t null, Password varchar(12) not null);create table borrowing( TaskID int identity(1000,1)not null primary key, ReaderID char(7) not null, ReaderName varchar(8), BookID char(5)not null, BookName varchar (50), Editor varchar(8), BorrowDate datetime not null, ReturnDate datetime not null, LibrarianID

13、char(5) not null);6.3写入数据直接在表中加入数据读者信息表图书信息表借书信息表工作人员表 6.4数据库备份方案 (1)启动SQL Server 企业管理器,登录到指定的数据库服务器,打开数据库文件夹,右击要进行备份的数据库图标,在弹出的快捷菜单中选择“所有任务”、“备份数据库”命令,打开“SQL Sever备份”对话框。 (2) 在“备份”选项中,选择备份类型(完全或差异);在“目的”选项组中,单击“添加”,打开“选择备份目的”对话框。 (3)在“重写”选项中,选择“追加到媒体”单选按钮,可将备份追加到设备上任何现有的设备中;选择“重写现有媒体”单选按钮,可重写设备中现有的

14、备份。 (4)如果需要定期进行备份操作,可以选择“调度”复选框,然后选择路径,在打开的“编辑调度”对话框中对设置备份时间。 (5)设置完毕后,则在“SQL Sever 备份”,对话框中单击“确定”,备份成功。 6.5数据库还原方案 (1)启动SQL Sever企业管理器,登录到指定的数据库服务器,打开数据库文件夹,右击要进行备份的数据库图标在弹出的快捷菜单中选择“所有任务”、“备份数据库”命令,打开“还原数据库”对话框。 (2)在“还原为数据库”下拉列表框中选择要恢复的数据库,在“还原”选项组中选择相应的数据库备份类型。 (3)先中“选项”选项卡,可以进行其他选项的设置。 (4)设置完毕,单击

15、“确定”按钮即可开始还原数据。 6.6输出已连接好的数据库中数据的方法 在c+builder 6.0中建立界面,拉入Query组件。把databasename属性值设为borrowing,以让他连接已连接好的数据库;把SQL属性值设置为select * from xxx,查询语句查询xxx表(xxx为表名);最后将Active属性值设置为true。以使此组件运行。 如果需要让所查询的表显示出来,需要拉入DataSourse和DBGrid组件。 例: Query name属性:ReaderTable Query1 Databasename属性:borrowing SQL属性:select * f

16、rom Reader Active属性:true DataSource DataSet属性:ReaderTable Query1 DBGrid DataSourse属性:BorrowingTableDataSource3 此时,就可以使DBGrid组件显示出Reader表的内容。 6.7重要代码(1)登录代码void _fastcall TMainForm:NLoginClick(TObject *Sender) IdentityStr=; UserName=; PassStr=; Login(); if(IdentityStr=) ShowMessage(请选择身份); else if(Id

17、entityStr=读者) NBrowsingBook-Enabled=true; NAlterUserPass-Enabled=true; else if(IdentityStr=工作人员) NBrowsingBook-Enabled=true; BorrowingManage-Enabled=true; NAlterUserPass-Enabled=true; else if(IdentityStr=系统管理员) NAlterUserPass-Enabled=true; NBrowsingBook-Enabled=true; BorrowingManage-Enabled=true; Sy

18、stemManage-Enabled=true; bool TMainForm:Login()int flag=-1;TLoginForm *LoginForm;LoginForm=new TLoginForm(this);flag=LoginForm-ShowModal();while (flag!=mrYes) int msg=MessageDlg(您还没有登录,不能进入系统,放弃登录吗?,mtConfirmation,TMsgDlgButtons()mbYesShowModal();String strSQL;IdentityStr=LoginForm-IdentityComboBox-

19、Text;if(IdentityStr=读者)strSQL=select * from Reader where UserName=+LoginForm-UserEdit-Text+;else if(IdentityStr=工作人员)strSQL=select * from Librarian where LibrarianID=+LoginForm-UserEdit-Text+;else if(LoginForm-UserEdit-Text!=boss)| (LoginForm-PassEdit-Text!=boss) ShowMessage(非法管理员); IdentityStr=; re

20、turn false; else UserName=LoginForm-UserEdit-Text; PassStr=LoginForm-PassEdit-Text; IdentityStr=LoginForm-IdentityComboBox-Text; return true; LoginQuery-SQL-Text=strSQL;LoginQuery-ExecSQL();LoginQuery-Active=true;if(LoginQuery-RecordCount=0) ShowMessage(该用户不存在,请先注册!); IdentityStr=; return false;if(L

21、oginQuery-Fields-FieldByName(Password)-AsString!=LoginForm-PassEdit-Text) ShowMessage(密码错误); return false;UserName=LoginForm-UserEdit-Text;PassStr=LoginForm-PassEdit-Text;IdentityStr=LoginForm-IdentityComboBox-Text;LoginForm-Free();return true;(2)借书代码void _fastcall TBorrowingBook:BitBtn1Click(TObjec

22、t *Sender) int BookNumber; ReaderTableQuery1-SQL-Text=select * from Reader where ReaderID=+ReaderIDEdit-Text+; ReaderTableQuery1-ExecSQL(); ReaderTableQuery1-Active=true; if(ReaderTableQuery1-RecordCount=1) ReaderNameEdit-Text=ReaderTableQuery1-Fields-FieldByName(Name)-AsString; BookNumber=ReaderTab

23、leQuery1-Fields-FieldByName(Number)-AsInteger; if(BookNumber=MaxBookNumber) ShowMessage(读者已借满); return; else ShowMessage(读者没有注册,借书失败); return; BookTableQuery2-SQL-Text=select * from book where BookID=+BookIDEdit-Text+; BookTableQuery2-ExecSQL(); BookTableQuery2-Active=true; if(BookTableQuery2-Record

24、Count=1) BookNameEdit-Text=BookTableQuery2-Fields-FieldByName(BookName)-AsString; EditorEdit-Text=BookTableQuery2-Fields-FieldByName(Editor)-AsString; if(BookTableQuery2-Fields-FieldByName(State)-AsString=1) ShowMessage(该书已被借出,操作失败!); return; else ShowMessage(没有这本书,操作失败!); return; BorrowDateEdit-Tex

25、t=DateToStr(Date(); ReturnDateEdit-Text=DateToStr(Date()+30); /LibrarianIDEdit-Text=LibrarianID; String strSQL=; strSQL=Insert into borrowing(ReaderID,ReaderName,BookID,BookName,Editor,BorrowDate,ReturnDate,LibrarianID) values(; strSQL=strSQL+ReaderIDEdit-Text; strSQL=strSQL+,+ReaderNameEdit-Text; s

26、trSQL=strSQL+,+BookIDEdit-Text; strSQL=strSQL+,+BookNameEdit-Text; strSQL=strSQL+,+EditorEdit-Text; strSQL=strSQL+,+BorrowDateEdit-Text; strSQL=strSQL+,+ReturnDateEdit-Text; strSQL=strSQL+,+LibrarianIDEdit-Text+); BorrowingTableQuery3-SQL-Text=strSQL; BorrowingTableQuery3-ExecSQL(); strSQL=Update bo

27、ok set state=1 where BookID=+BookIDEdit-Text+; /书的状态置为1,借出状态 BorrowingTableQuery3-SQL-Text=strSQL; BorrowingTableQuery3-ExecSQL(); strSQL=Update Reader set Number=Number+1 where ReaderID=+ReaderIDEdit-Text+; /读者能借的书减一 BorrowingTableQuery3-SQL-Text=strSQL; BorrowingTableQuery3-ExecSQL(); ShowMessage(借书成功); BorrowingTableQuery3-SQL-Text=select * from borrowing; BorrowingTableQuery3-Active=true; BorrowingTableQuery3-Last(); 6.8界面(1个主窗体,10个子窗体,子窗体不一一列出) 主界面系统登录界面

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

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