图书管理系统课程设计报告_第1页
图书管理系统课程设计报告_第2页
图书管理系统课程设计报告_第3页
图书管理系统课程设计报告_第4页
图书管理系统课程设计报告_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、管理信息系统实习报告专业班级 学生姓名 指导教师王桃群时间 成绩 一、课程设计题目图书管理系统二、系统需求1. 系统的准备操作系统: Windows xp数据库系统: SQL Server 2000或 SQL Server 2005客户端开发工具: Visual Studio 2005 或其他开发工具2. 知识准备熟悉 SQL Server 2000或 SQL Server 2005的使用;熟悉C#或其他语言进行数据库编程。3. 系统分析图书信息包括:每种图书都有书名、ISBN 名或多名作者(译者)、出版 社、定价和内容简介等;读者信息包括:借书证记录有借阅者的姓名、密码、所在单位和类别等;

2、读者凭借书证借书, 教师最多借书 15 本书,借书期限最长为 90 天,学生最 多借书 8 本书,借书期限最长为 30 天。对于超期未还的读者不能继续借书,每 本书每超期一天罚款元。三、系统设计1.体系结构本系统使用c/s模式的两层结构,表示层(USL和数据访问层(DAL。表示层(USL :为客户提供对应用程序的访问,以Windows应用程序或 Web 应用程序的形式提供实现的功能。业务逻辑层(BLL:实现应用程序的业务功能,以类库的形式为表示层提供服务数据访问层(DAL):实现整个系统所有的数据库连接、数据存取操作,以组 件类库的形式为业务逻辑层提供服务。此外,实体类,简单地说是描述一个业务

3、实体的类。 业务实体直观一点的理 解就是整个应用系统业务所涉及的对象, 从数据存储来讲,业务实体就是存储应 用系统信息的数据表,将数据表中的每一个字段定义成属性, 并将这些属性用一 个类封装,这个类就称为实体类。2功能模块框图3数据库设计1.读者类别表(ReaderType)字段名数据类型说明rdTypeSmalll nt读者类别【主键】rdTypeNameVarchar(8)读者类别名称CanLen dQtyInt可借书数量CanLen dDayInt可借书天数CanCon ti nu eTimesInt可续借的次数Puni shRateFloat罚款率(分/天/ 本)DateValidSm

4、allI nt证书有效日期2.读者信息表(Reader)字段名数据类型说明rdIDInt读者序号【主键】rdNamevarchar(10)读者姓名rdPwdvarchar (10)读者密码,初值为“ 123 ”rdSexBit性别,0-男,1-女rdTypeSmallI nt读者类别【外键】rdDeptChar(8)单位代码rdPh onevarchar(25)电话号码rdEmailvarchar(25)电子邮件rdDateRegsmalldatetime读者登记日期rdBorrowQtyInt已借书数量3.图书信息表(Book)字段名数据类型说明bkIDInt图书序号【主键】bkCodeCh

5、ar(20)图书编号bkNameVarchar(50)书名bkAuthorVarchar(30)作者bkPressVarchar(50)出版社bkDatePressSmalldatetime出版日期bklSBNChar(15)书号bkCatalogVarchar(30)分类名bkLanguageSmalll nt语言,0-中文,1-英文,2-日文,3-俄文,4-德文,5-法文bkPagesInt页数bkPriceMoney价格bkDatelnSmallDateTime入馆日期bkBriefText内容简介bkCoverVarchar(100)或 image图书封面照片bklsl nLabCha

6、r(4)是否在馆4.借阅信息表(Borrow)字段名数据类型说明rdIDInt读者序号【主键】bkIDInt图书序号【主键】ldC on ti nu eTimesInt续借次数(第一次借时,记为1)ldDateOutSmallDateTime借书日期ldDateRetPla nSmallDateTime应还日期IdDateRetActSmallDateTime实际还书日期ldOverDayInt超期天数ldOverMo neyMoney超期金额ldPu ni shM on eyMoney罚款金额lsHasRetur nBit是否已经还书,缺省为 0-未还OperatorLe ndVarChar

7、(10)借书操作员SqlCommand cmd = ();四、系统实现登录的代码实现:using System;using ;using ;using ;using ;using BooksMngpublic partial classBookLogin : Formpublic BookLogin()lnitializeComponent(); private void textBox2_TextChanged(object sender, EventArgs e)private void btnlogin_Click( object sender, EventArgs e)database

8、=Booksmng; integrated security=True);alue = ;userPwd , , 20).Value = ;tryint count = ();if (count != 0)(登陆成功! );BookMain frm = new BookMain ();();catch (SqlException ex)database=BooksMng;integrated security=True );database=BooksMng;integrated security=True);();SqlCommand cmd = ();database=BooksMng;i

9、ntegrated security=True );();SqlCommand cmd = ();= insert into Book(bkName, bkAuthor,bkPages,bkPress)values(bkName,bkAuthor,bkPages,bkPress);bkName , , 30).Value = ;bkPages, .Value =;alue = ;try();database=BooksMng;integrated security=True );();SqlCommand cmd = ();String sql = ;alue = ;SqlDataAdapte

10、r sda=new SqlDataAdapter(cmd);DataSet ds=new DataSet();(ds);= 0;catch(SqlException ex)(查找失败 );private void btnDelete_Click( object sender, EventArgs e)database=BooksMng;integrated security=True );= delete from Book where bkID=bkID ;bkID , .Value = (dgvBooks0,tryif (确定要删除该图书吗 , 确定删除 , , , =();(删除成功!

11、);DataBind();catch (SqlException ex)(删除失败 );Jdatabase=BooksMng;integrated security=True );();SqlCommand cmd = ();= update Book set bkName=bkName, bkAuthor=bkAuthor,bkPages=bkPages,bkPress=bkPress where bkID=bkID;bkID , .Value = (dgvBooks0,bkName , , 30).Value = ;bkAuthor , , 30).Value =;tryif (确定要更新

12、图书信息吗 , 确认更新 , , , =();(更新成功! );DataBind();catch (SqlException ex)(更新失败 );Jdatabase=BooksMng;integrated security=true );();SqlCommand cmd = ();= select CanLendDay from ReaderType where rdType=(select rdType from Reader where rdID=+ rdID + );return ();private void btnBorrow_Click( object sender, Even

13、tArgs e)SqlConnection conn = new SqlConnection(server=.;database=BooksMng;integratedsecurity=true );();SqlCommand cmd = ();= insert into Borrow(rdID,bkID,ldContinueTimes,IdDateOut,ldDateRetPlan,lsHasReturn) values(rdID,bkID,0,IdDateOut,ldDateRetPlan,0) ;rdID , .Value = ;bkID , .Value = ;alue = ;alue

14、 =try();(借书成功! );catch (SqlException ex)(借书失败 );J五、系统运行效果图书管理模块的运行结果如下:首先,设计一个用户登录界面,以管理员的身份登录来实现图书的添加、查找、 删除、更新的功能。登录界面的设计:登录成功的效果登录成功以后,跳到图书管理主界面:图书管理主界面如下:登录成功以后,跳到图书管理的页面:图书管理的页面如下:此界面可以对图书实现添加、查找、删除和信息更新这四个功能从图书管理主界面跳到借书界面:六、遇到的问题及解决方法在实现借书这个功能时,老是借书失败,并且提示:凭借这个提示是不可能找到错误的,为了找到这个错误,我设置了一个断点如图:e

15、ihd. Ewe cuts:show rUfel HgB4X. Show CfSWUK):然后逐句运行,发现错误在“ catch (SqlException ex)这句,并且提示:7 UX-UV 4emd.I1 eSEigeBo:SB sko-. c臂书失 wn;11 esi:-:i-Bokb ShoTf Message);c附近有谱法措饯.祚:private void Bookfiorro_Laadtobject sender.查看详细信B-粽异韦详闕信息复制到剪贴根点击获取错误的帮助,软件给出的帮助是:我不知道这是什么错误,但是我知道错误不在 “catch (SqlException ex

16、)这句,因为每当执行“();”这句时,就会跳到“catch (SqlException ex)”这句,并且提示有错误。我上网搜索了“();”此语句,发现有这么一段解释:OleDbParameter(”用户名,)首先你的in serti nto这个 SQL 语句是错误的,应该是in sert intoEnternu mber(user name,password,sex,work,tel,mail)values ( 用户 名,密码,性别,职业,电话,邮箱)其次就是最关键的错误,parameters这个方法使用时一定要有这样一个语句=这个语句的作用是用存储方法来传值的,也就是说在你的数据库中一定要一个存储过程,parameters方法的使用前面应该有, =存储过程”IIoledbparameter(存储变量的一个变量名数值) 此时我终于知道了,是数据库插入于具有问题,经过我反复的比较数据库 中的各个键的属性,左最终改掉了所有的错误,程序运行正确。七、心得与体会这次的课程设计主要使用 c#和SQL Server这两种知识来设计一个图书管理 系统,而对于这两种知识我们曾经都开了课程, 并且进行了系统的学习。 我曾经 自认为SQL Serve还学得不错,因为书上的东西差不多都弄懂了, 然而这次课程 设计我

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论