




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
成绩课 程 设 计 课程名称_ 数据库系统课程设计_题目名称 图书馆借阅管理系统 学生学院 计算机学院 专业班级 12级网络工程1班 学 号_3112006323_学生姓名 丁 晗 指导教师_ 宋 玮_2014 年 1 月17日 评价标准分数比例(%)成绩论文论文结构包含:相关技术介绍、需求分析、概念结构设计、逻辑结构设计、数据库物理设计、数据库实施、系统测试方案和测试报告、系统的主要功能和使用说明、系统安装说明。要求论文完整、内容详细,格式规范。40程序系统运行正确;功能完善:有增、删、改、查功能,有基本的报表、查询、统计和输入、输出功能;工作量充分;系统实现技术的难度。30数据库设计E-R图设计正确;数据库逻辑结构设计规范化;数据库物理设计合理。30总评成绩 优 良 中 及格 不及格总分目录1 相关技术介绍12 需求分析13 概念结构设计24 逻辑结构设计35 数据库物理设计46 数据库实施77 课程设计的心得178 参考文献17一相关技术介绍1.1 C+Builder 6 介绍 C+ Builder是由Borland公司推出的一款可视化集成开发工具。C+ Builder具有快速的可视化开发环境:只要简单地把控件(Component)拖到窗体(Form)上,定义一下它的属性,设置一下它的外观,就可以快速地建立应用程序界面;C+ Builder内置了100多个完全封装了Windows公用特性且具有完全可扩展性(包括全面支持ActiveX控件)的可重用控件;C+ Builder具有一个专业C+开发环境所能提供的全部功能:快速、高效、灵活的编译器优化,逐步连接,CPU透视,命令行工具等。它实现了可视化的编程环境和功能强大的编程语言(C+)的完美结合。1.2 Microsoft SQL Server 2005介绍 Microsoft SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 2005数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。Microsoft SQL Server 2005 数据引擎是该企业数据管理解决方案的核心。此外 Microsoft SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。2 需求分析 2.1系统功能模块图图书借阅管理系统登录和账号管理用户注册和注销借阅管理工作人员注册和注销读者注册和注销旧书淘汰新书入库还书借书账号管理系统登录 2.2系统的数据流程图图书管理员入库/出库注册/注销还书借书用户信息库存图书和借阅信息库存读者2.3系统功能设计(1)密码和权限管理(2)书目查询(3)借书和还书(4)读者的注册和注销(5)新书的入库和淘汰(6)账号管理(7)窗口管理三概念结构设计3.1 E-R图图书图书工作人员 n用户 1 注册和注销 借书读者 3.2属性描述l 读者:读者编号,读者姓名,用户名,密码,性别,工作地点,身份,已借书数量,备注;l 图书:书号,书名,作者,出版社,出版日期,索引书号,价格,状态(1为借出&0为在馆);l 图书馆工作人员:工作人员编号,姓名,登录密码;l 借书信息:借书单编号,读者编号,读者姓名,书号,书名,作者,借出日期,应还日期,工作人员编号; 4 逻辑结构设计 4.1表 (1)读者信息表名称数据类型是否为空说明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书名EditorVarchar(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 null借书信息编号(主键)ReaderIDChar(7)Not null读者编号ReaderNameVarchar(8)读者姓名BookIDChar(5)Not null书号BookNameVarchar(50)书名EditorVarchar(8)作者BorrowDateDateTimeNot null借出日期ReturnDateDateTimeNot null应还日期LibrarianIDChar(5)Not null工作人员编号5 数据库物理设计5.1创建数据库 启动SQL Server 2005企业管理器,创建一个名为BookBorrowingManager的数据库5.2关系图5.3使用ODBC连接数据库(1)点击“开始”-“搜索”,输入ODBC,打开ODBC数据源管理器,单击“添加”按钮,选择SQL Server。(2) 单击“完成”按钮,出现下图所示界面。分别设置数据库的别名和运行SQL Server数据库的计算机名。(3)单击“下一步”按钮,在此界面设置数据库的登录方式,一种是使用网络ID放式,一种是使用Windows系统登录方式,此课设使用网络ID方式。 (4)单击“下一步”按钮,在新的界面选择相应的数据库。在此选择创建好的BookBorrowingManager数据库。 (5)单击“下一步”按钮,在出现的界面设置语言种类、日志文件等。单击“完成”按钮,出现数据库连接测试界面。单击“测试”按钮,检查所创建的别名是否能成功连接数据库。成功则创建完毕,失败则返回检查。六数据库实施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 varchar(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) not 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 char(5) not null);6.3写入数据直接在表中加入数据读者信息表图书信息表借书信息表工作人员表 6.4数据库备份方案 (1)启动SQL Server 企业管理器,登录到指定的数据库服务器,打开数据库文件夹,右击要进行备份的数据库图标,在弹出的快捷菜单中选择“所有任务”、“备份数据库”命令,打开“SQL Sever备份”对话框。 (2) 在“备份”选项中,选择备份类型(完全或差异);在“目的”选项组中,单击“添加”,打开“选择备份目的”对话框。 (3)在“重写”选项中,选择“追加到媒体”单选按钮,可将备份追加到设备上任何现有的设备中;选择“重写现有媒体”单选按钮,可重写设备中现有的备份。 (4)如果需要定期进行备份操作,可以选择“调度”复选框,然后选择路径,在打开的“编辑调度”对话框中对设置备份时间。 (5)设置完毕后,则在“SQL Sever 备份”,对话框中单击“确定”,备份成功。 6.5数据库还原方案 (1)启动SQL Sever企业管理器,登录到指定的数据库服务器,打开数据库文件夹,右击要进行备份的数据库图标在弹出的快捷菜单中选择“所有任务”、“备份数据库”命令,打开“还原数据库”对话框。 (2)在“还原为数据库”下拉列表框中选择要恢复的数据库,在“还原”选项组中选择相应的数据库备份类型。 (3)先中“选项”选项卡,可以进行其他选项的设置。 (4)设置完毕,单击“确定”按钮即可开始还原数据。 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 * from 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(IdentityStr=读者) 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; SystemManage-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-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=; return 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(LoginQuery-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(TObject *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=ReaderTableQuery1-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-RecordCount=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-Text=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; strSQL=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 book set state=1 where BookID=+BookIDEdit-Text+; /书的状态置为1,借出状态 BorrowingTableQuery3-SQL-Text=strSQL; BorrowingTableQ
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 包装印刷企业经营管理方案
- 光伏设备电工技能考试试题及答案
- 长寿命核燃料包壳材料研发-洞察阐释
- 物业春节安全通知(18篇)
- 跨境支付汇率风险管理支付解决方案协议
- 常州二手房交易税费计算与过户手续规范合同
- 不锈钢管道清洗检测及维护合同
- 餐饮行业总经理任期绩效管理合同
- 厕所设计施工一体化合同
- 2026届新高考语文热点复习:精准分析叙事特征
- (高清版)TDT 1063-2021 国土空间规划城市体检评估规程
- 数据治理培训资料
- 建筑装饰装修工程消耗量定额
- 中小学生心理健康的MHT诊断测验(包括评分表和评分细则)
- 《劳动法案例》课件
- 龙潭寺未来规划方案
- EOD项目策划、融资、落地、偏差、风险
- 汉堡店创业计划书
- 二手车鉴定评估表
- 中国思想史 马工程329P
- 2023年高考全国新高考1卷英语含答案(适用地区山东、广东、湖南、湖北、河北、江苏、福建、浙江)
评论
0/150
提交评论