图书管理系统(内附源代码).doc
《图书管理系统(内附源代码).doc》由会员分享,可在线阅读,更多相关《图书管理系统(内附源代码).doc(61页珍藏版)》请在咨信网上搜索。
图书管理系统(内附源代码) ———————————————————————————————— 作者: ———————————————————————————————— 日期: 61 个人收集整理 勿做商业用途 本人是一个初学者,2个月前学习C#,学习过程中遇到过许多困难无法独立解决,现在做成了第一个系统:图书管理系统,各项功能均能顺利实现,因为知道很多初学者和我一样苦无求学之道,现在将部分主要源码上传,希望能得到高手的指点. 下面就是该系统的主要功能及代码: 1。登陆界面 主要代码: public partial class LoginForm : Form{ public static string uacc; public static string upsw; public static string uname; public static string usex; public static string upart; public static string uright; public LoginForm() { InitializeComponent(); } private void loginbtn_Click(object sender, EventArgs e) { if (this.useracctxt。Text。Trim() == ”” && this.pswtxt。Text == ””) { MessageBox。Show(”请输入您的用户名和密码!", "提示!”); return; } try { string sql; sql = "select * from tb_user where uacc='” + this.useracctxt。Text + ”’ and upsw=’" + this。pswtxt。Text + "'”; OleDbDataReader dr = DBHelp.OleReader(sql); dr.Read(); if (dr。HasRows) { uacc = this。useracctxt。Text; upsw = this。pswtxt。Text; uname = dr["uname"]。ToString(); usex = dr["usex"]。ToString(); upart = dr["upart”]。ToString(); uright = dr[”uright”]。ToString(); MainForm af = new MainForm(this); this.Hide(); this。useracctxt。Clear(); this.pswtxt。Clear(); af.Show(); } else { MessageBox。Show(”账号或密码错误!”, "提示!”); this.useracctxt.Clear(); this.pswtxt。Clear(); this.useracctxt。Focus(); } } catch (Exception) { MessageBox。Show("数据库无法连接!", "警告!”); } } private void cancelbtn_Click(object sender, EventArgs e) { Application.Exit(); } private void LoginForm_Closing(object sender, FormClosingEventArgs e) { Application。Exit(); } } 2.主界面(图较小,自己可以拉大点) 主要代码就不写了,很简单。 3.权限设置 主要代码: public partial class RightSet : Form { public RightSet() { InitializeComponent(); } private void RightSet_Load(object sender, EventArgs e) { this.rightbox.SelectedIndex = 0; //this.treeright.ExpandAll(); Fill(); } private void okbtn_Click(object sender, EventArgs e) { if (this.txtnum.Text == string。Empty) { MessageBox.Show(”请输入最大借阅图书数量!”, "提示!"); return; } if (this.txtday。Text == string.Empty) { MessageBox.Show(”请输入最大借阅图书时间!”, "提示!”); return; } if (this。txtcost。Text == string。Empty) { MessageBox.Show(”请输入借书押金金额!”, ”提示!”); return; } if (this。txtfine.Text == string.Empty) { MessageBox.Show("请输入超期罚款金额!”, "提示!"); return; } if (this.txttim。Text == string。Empty) { MessageBox.Show("请输入图书遗失罚款倍数!”, ”提示!"); return; } ArrayList arr = new ArrayList(); foreach (TreeNode nodes in this.treeright.Nodes) { if (nodes.Checked) { arr.Add(”1”); } else { arr。Add("0”); } foreach(TreeNode node in nodes。Nodes) { if (node.Checked) { arr.Add("1"); } else { arr.Add(”0”); } } } string[] a=new string[11]; for (int i = 0; i 〈 arr.Count; i++) { if (arr[i]。ToString().Trim() == ”1") { a[i] = ”yes”; } else { a[i] = ”no”; } } string sql = string.Empty; sql += "select * from tb_right where uright=’" + this.rightbox。Text + ”'"; DataTable dt = DBHelp。ExeOleCommand(sql); bool b = false; while (dt.Rows.Count != 0) { b = true; break; } string sql1; if (b) { sql1 = ”update tb_right set "; sql1 += ”maxbook=’” + this。txtnum.Text + "',”; sql1 += "maxdate=’" + this。txtday。Text + ”’,"; sql1 += "rcost=’" + this.txtcost。Text + ”',”; sql1 += "rfine=’" + this.txtfine。Text + ”’,”; sql1 += "rtim=’" + this。txttim。Text + ”',”; sql1 += ”rbm=’" + a[0] + ”',”; sql1 += "rum=’” + a[1] + ”’,"; sql1 += ”rrm=’" + a[2] + "',”; sql1 += "rborm='” + a[3] + "’,"; sql1 += "ris=’” + a[4] + "',"; sql1 += "rbis=’" + a[5] + "',”; sql1 += ”ruis=’" + a[6] + ”',"; sql1 += "rboris=’" + a[7] + ”’,"; sql1 += "rblp=’” + a[8] + ”’,"; sql1 += "rbl=’" + a[9] + ”’,"; sql1 += "rlp='" + a[10] + ”’ "; sql1 += ”where uright='” + this。rightbox。Text + ”'”; } else { sql1 = "insert into tb_right(uright,maxbook,maxdate,rcost,rfine,rtim,rbm,rum,rrm,rborm,ris,rbis,ruis,rboris,rblp,rbl,rlp)”; sql1 += " values(’" + this。rightbox。Text + "','" + this.txtnum。Text + "’,’" + this.txtday.Text + "’,'" + this。txtcost.Text + ”',’" + this.txtfine。Text + "’,’” + this。txttim。Text + ”',’” + a[0] + ”’,'" + a[1] + "’,’" + a[2] + ”’,’" + a[3] + ”’,'” + a[4] + "',’” + a[5] + "’,'” + a[6] + ”','” + a[7] + "',’" + a[8] + ”’,’" + a[9] + ”’,’” + a[10] + "’)”; } DataTable dt1 = DBHelp。ExeOleCommand(sql1); Fill(); } private void Fill() { string sql; sql = "select rid as ID号,uright as 用户身份, maxbook as 最大借书数量,maxdate as 最大借阅时间,rcost as 押金,rfine as 超期罚率,rtim as 遗失赔率,rbm as 图书管理,rum as 用户管理,rrm as 权限管理,rborm as 借阅管理,ris as 信息查询,rbis as 图书信息查询,ruis as 用户信息查询,rboris as 借阅历史查询,rblp as 图书挂失处理,rbl as 图书挂失,rlp as 挂失处理 from tb_right”; DataTable dt = DBHelp.ExeOleCommand(sql); this.dataGridView1。DataSource = dt; } private void cell_click(object sender, DataGridViewCellEventArgs e) { this.rightbox.Text = this.dataGridView1[1, this。dataGridView1。CurrentCell.RowIndex].Value.ToString()。Trim(); this。txtnum.Text = this.dataGridView1[2, this。dataGridView1。CurrentCell。RowIndex].Value.ToString()。Trim(); this.txtday。Text = this.dataGridView1[3, this。dataGridView1。CurrentCell。RowIndex]。Value。ToString()。Trim(); this。txtcost。Text = this.dataGridView1[4, this.dataGridView1。CurrentCell。RowIndex].Value.ToString()。Trim(); this.txtfine。Text = this.dataGridView1[5, this。dataGridView1.CurrentCell。RowIndex]。Value.ToString().Trim(); this.txttim.Text = this.dataGridView1[6, this.dataGridView1。CurrentCell。RowIndex]。Value.ToString().Trim(); ArrayList list = new ArrayList(); string sql = "select * from tb_right where uright=’” + this.rightbox.Text + "'"; DataTable dt = DBHelp。ExeOleCommand(sql); if (dt。Rows。Count != 0) { for (int i = 0; i < 11; i++) { list.Add(dt.Rows[0][7+i]。ToString()); } ArrayList arr = new ArrayList(); foreach (TreeNode nodes in this。treeright.Nodes) { arr.Add(nodes); foreach(TreeNode node in nodes.Nodes) { arr.Add(node); } } for (int i = 0; i 〈 list。Count; i++) { if (list[i]。ToString() == ”yes") { ((TreeNode)arr[i]).Checked = true; } else { ((TreeNode)arr[i]).Checked = false; } } } } 4。权限修改 主要代码: public partial class UserRight : Form { public UserRight() { InitializeComponent(); } private void btncancel_Click(object sender, EventArgs e) { this。Close(); } private void UserRight_Load(object sender, EventArgs e) { this.checkbox.SelectedIndex = 0; this.partbox。SelectedIndex = 0; } private void Fill() { if (this.checkbox.Text == "") { MessageBox。Show(”请选择要使用的查询字段!”, "提示!”); return; } if (this。partbox。Text == "”) { MessageBox.Show(”请选择用户所在的部门!”, ”提示!”); return; } string sql = string。Empty; sql += "select uid as ID号,uacc as 帐号,uname as 姓名,usex as 性别,upart as 部门,utelphone as 移动电话,uphone as 固定电话,udate as 注册日期,uright as 权限 from tb_user”; if (this。checktxt.Text != ”") { string c = this。checkbox.SelectedIndex。ToString(); switch (c) { case ”0”://用户帐号 if (this。checktxt.Text != string。Empty) { sql += " where uacc like '%” + this.checktxt.Text + ”%’"; } break; case "1”://用户姓名 if (this.checktxt.Text != string。Empty) { sql += " where uname like '%” + this。checktxt。Text + ”%’”; } break; default: break; } if (this。partbox.SelectedIndex。ToString() != ”0”) { sql += ” and upart=’” + this。partbox。Text + "'”; } } else { if (this。partbox。SelectedIndex。ToString() != ”0”) { sql += " where upart=’" + this。partbox.Text + ”'"; } } sql += ” order by uacc asc"; DataTable dt = DBHelp。ExeOleCommand(sql); this。dataGridView1。DataSource = dt; } private void checkbtn_Click(object sender, EventArgs e) { Fill(); } private void cell_click(object sender, DataGridViewCellEventArgs e) { this.txtuacc。Text = this.dataGridView1[1, this。dataGridView1。CurrentCell.RowIndex]。Value.ToString().Trim(); this。txtname。Text = this.dataGridView1[2, this。dataGridView1.CurrentCell.RowIndex].Value.ToString().Trim(); this。txtsex。Text = this.dataGridView1[3, this。dataGridView1。CurrentCell.RowIndex].Value.ToString()。Trim(); this.txtpart.Text = this.dataGridView1[4, this。dataGridView1.CurrentCell.RowIndex]。Value.ToString()。Trim(); this。txttel。Text = this。dataGridView1[5, this.dataGridView1.CurrentCell.RowIndex]。Value.ToString().Trim(); this。txtphone.Text = this.dataGridView1[6, this.dataGridView1.CurrentCell。RowIndex]。Value。ToString().Trim(); this.txtdate。Text = this.dataGridView1[7, this。dataGridView1.CurrentCell。RowIndex].Value.ToString()。Trim(); this。txtright.Text = this。dataGridView1[8, this.dataGridView1。CurrentCell。RowIndex].Value.ToString()。Trim(); this.txtright.Enabled = true; } private void btnchange_Click(object sender, EventArgs e) { if (this.txtuacc。Text == "”) { MessageBox。Show(”执行操作前,请先在下表选择要修改的用户!", ”提示!"); return; } DialogResult res; res=MessageBox。Show(”您确定要修改该用户吗?”, ”提示!”, MessageBoxButtons.YesNo); if (res == DialogResult。Yes) { string sql = string.Empty; sql += ”update tb_user set uright=’”+this。txtright。Text+"'”; sql += ” where uacc=’”+this。txtuacc.Text+"’”; DataTable dt = DBHelp.ExeOleCommand(sql); MessageBox.Show(”修改成功!",”恭喜!”); Fill(); } } } 5。添加图书信息 主要代码: public partial class NewBook : Form { public NewBook() { InitializeComponent(); } private void retbtn_Click(object sender, EventArgs e) { this。Hide(); } private void savebtn_Click(object sender, EventArgs e) { if (this。booknotxt.Text == ”") { MessageBox。Show("请输入图书的信息!", "提示!"); return; } if (this.booknametxt.Text == ””) { MessageBox。Show(”请输入图书的信息!”, "提示!”); return; } if (this。classtxt.Text == "”) { MessageBox.Show("请输入图书的信息!”, "提示!”); return; } if (this。isbntxt。Text == ”") { MessageBox.Show("请输入图书的信息!”, ”提示!”); return; } if (this。bookcosttxt。Text == "”) { MessageBox。Show(”请输入图书的信息!”, "提示!”); return; } if (this.bookwritertxt。Text == "") { MessageBox。Show("请输入图书的信息!", ”提示!"); return; } if (this.bookpubtxt。Tex- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 管理 系统 源代码
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文