欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    图书管理系统设计与实现报告(共12页).doc

    • 资源ID:14443413       资源大小:1.79MB        全文页数:12页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    图书管理系统设计与实现报告(共12页).doc

    精选优质文档-倾情为你奉上 JIANGSU UNIVERSITY 项 目 实 践 II图书管理系统Library Management System学 院 名 称 : 计算机科学与通信工程 专 业 班 级 : 嵌软1201 学 号 : 学 生 姓 名 : 史 禹 指 导 教 师 : 宋和平 2014年 6 月 正文一、课程设计概述目的:通过本项目实践的准备与总结,复习、领会、巩固和运用软件工程课堂上所学的软件开发方法和知识,为学生综合应用本专业所学习的多门课程知识创造实践机会,使每个学生了解软件工具与环境对于项目开发的重要性,并且重点深入掌握好一、两种较新或较流行的软件工具或计算机应用技术,提高学生今后参与开发稍大规模实际软件项目和探索未知领域的能力和自信心。任务:假设图书馆委托大学生为他创建一个图书管理系统,以便能够科学管理、提高效益。开发环境:vs2010 sqlserver2008二、项目的需求分析(1) 所有人员需要登陆才能操作系统,可以修改密码。(2) 图书管理员可以添加图书(包括书号、书名、出版社、作者、图书简介、价格、封面图片等信息)、删除图书,假设每种图书只有一本。图书管理员可以添加借阅者(包括借书证号、姓名、类别(教师或学生)、学院、性别、照片等信息)、删除借阅者。(3) 借阅者可以根据书名或者作者模糊查询图书(模糊查询是指在查询语句中使用like关键字),可以查看自己所借图书信息。(4) 借阅者可以借阅图书,此时需要记录借书日期和应还日期信息(设置借阅日期为30天)。借阅者包括教师和学生,教师最多可以借阅10本图书,学生最多可以借阅5本图书。借阅者如果有超期图书则不能再借。(5) 借阅者还书时,检查是否超期,如果超期,按照0.1元/天计算罚款金额,缴纳罚款后还书。如果图书丢失,按照图书价格的两倍赔偿。(6) 实现系统时请考虑数据的参照完整性,例如借阅图书时应该是存在的图书,删除图书时同时删除该图书的借阅信息。三、概念模型四、数据模型管理员列名数据类型允许null值主键UidVarchar否是passwordVarchar否否用户列名数据类型允许null值主键UidInt否是PasswordVarchar 否否Namevarchar是否sexvarchar是否departmentvarchar是否typevarchar否否numint否否图书列名数据类型允许null值主键IdInt否是nameVarchar 是否pressVarchar 是否authorVarchar 是否instructionVarchar 是否priceNumeric是否借阅列名数据类型允许null值主键UidInt否是idVarchar 否是outtimeDatetime是否intimeDatetime是否statevarchar否否归还列名数据类型允许null值主键UidInt否是idVarchar 否是intimeDatetime是否Priceint否否五、功能设计模块描述:图书管理系统的功能模块如下图所示:图书管理系统管理员登录用户登录删除用户添加用户删除图书添加图书罚款缴纳归还图书密码修改修改密码借阅查询图书借阅图书检索主程序流程图开始登录管理员登陆借阅者登陆判断借书查阅借阅者信息管理密码修改图书信息管理密码修改图书查阅主要代码:借书代码: private void button2_Click(object sender, EventArgs e) if (textBox2.Text != "") if (flag != 0) SqlConnection con = new SqlConnection(); con.ConnectionString = "data source =RUNQUQPHLOAYYPH;initial catalog =tushuguanli;integrated security=true" con.Open();/创建数据库连接 string id = textBox2.Text;/获得索书号 /将借阅者uid,图书id,借阅时间,应还时间写入数据库 SqlCommand co = new SqlCommand("insert into jieyue values('" + login.ss + "','" + id + "','" + System.DateTime.Now + "','" + System.DateTime.Now.Date.AddDays(30) + "','未还')", con); /检索登录的借书证号类型为学生还是老师 SqlCommand com = new SqlCommand("select type from userlogin where uid='" + login.ss + "'", con); /查看该借阅证号已借几本书 SqlCommand comm = new SqlCommand("select num from userlogin where uid='" + login.ss + "'", con); /查看要借阅的图书是否可借 SqlCommand cos = new SqlCommand("select state from books where id='" + id + "'", con); /查看尚未归还的图书的应还日期 SqlCommand jie = new SqlCommand("select intime from jieyue where (uid='" + login.ss + "'and state='未还')", con); SqlDataReader myReader = jie.ExecuteReader(); bool x = false; while (myReader.Read()/检查是否超期 string ee = myReader.GetValue(0).ToString();/获得读取到的数据 DateTime t = Convert.ToDateTime(ee);/将字符串转换成日期类型 DateTime t1 = DateTime.Now; if (t > t1)/比较应还日期和现在日期的大小 x = true; else x = false; break; myReader.Close();/关闭reader string s = (string)com.ExecuteScalar(); string ss = (string)cos.ExecuteScalar(); int a = (Int32)comm.ExecuteScalar();/执行sql语句 int i = 0; if (x = true)/未超期 if (s = "学生")/借书证类型为学生 if (a < 5)/借的数目5 if (ss = "可借") i = co.ExecuteNonQuery();/执行sql语句 SqlCommand cc = new SqlCommand("update userlogin set num='" + a+ + "'", con);/借书数目加一 SqlCommand tt = new SqlCommand("update books set state='已借出'", con);/被借的书状态显示为已借出 tt.ExecuteNonQuery(); cc.ExecuteNonQuery(); else MessageBox.Show("已借出"); else MessageBox.Show("学生最多借阅5本"); else if (a < 10) if (ss = "可借") i = co.ExecuteNonQuery(); SqlCommand cc = new SqlCommand("update userlogin set num='" + a+ + "'", con); SqlCommand tt = new SqlCommand("update books set state='已借出'", con); tt.ExecuteNonQuery(); cc.ExecuteNonQuery(); else MessageBox.Show("已借出"); else MessageBox.Show("教师最多借阅10本"); if (i != 0) MessageBox.Show("图书借阅成功"); else MessageBox.Show("你有超期图书未还,借阅失败"); else MessageBox.Show("请输入要借阅的索书号"); 六、运行过程系统运行过程的截图与说明1、登录界面点击左上角登录,可切换登录类型2、用户操作界面用户可以根据作者或作品名进行模糊查询,可根据索书号借阅图书,可查看自己的借阅记录,点击左上角设置可修改密码。3、管理员操作界面管理员可进行添加图书、删除图书、添加借阅者、删除借阅者、缴纳罚款、还书等操作,点击左上角设置可修改密码。4、添加、删除用户界面管理员通过此界面进行添加、删除用户操作5、添加、删除图书界面管理员可进行添加、删除图书操作6、缴纳罚款界面管理员可进行收取超期或丢书罚款七、个人遇到的困难、解决方法与个人小结此部分请详细说明困难1:调试过程中出现截断二进制字符串错误解决方法:错误原因是数据溢出,调大数据库中相关字段范围困难2:缺少对象实例化解决方法:select语句中有空格,导致取出的数据为NULL,重新写一遍select语句,注意空格情况个人小结:在这次的项目实践中,因为事先没有做总体的规划,导致在开发过程中不断的发现之前设计的数据库不满足要求,而不断的重新建表,浪费了很多时间,在以后的实践中,一定要对项目进行总体的设计后再着手写代码。此外,在实践过程中,总是出现一些明明代码正确,运行结果却错误的情况,出现这些情况的原因大多是空格等细小因素的原因,而这种状况又是最伤人脑筋的情况,因为不好检查出错误,在以后的实践中一定要细心仔细,只有这样,才能避免浪费时间。专心-专注-专业

    注意事项

    本文(图书管理系统设计与实现报告(共12页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开