收藏 分销(赏)

图书管理系统系统设计(含代码).doc

上传人:w****g 文档编号:1852082 上传时间:2024-05-10 格式:DOC 页数:40 大小:971KB 下载积分:12 金币
下载 相关 举报
图书管理系统系统设计(含代码).doc_第1页
第1页 / 共40页
图书管理系统系统设计(含代码).doc_第2页
第2页 / 共40页


点击查看更多>>
资源描述
《高级程序设计语言》 图书管理系统设计报告    学  院:   国土资源工程学院    专  业:   测 绘 工 程    成  员:******************************** 指导教师:       黄云铠       日  期:    2014年11月5日     1 系统设计 1.1 设计目标 本系统是针对图书管理工作过程进行设计的,主要实现如下目标: 注册用户可以登录此系统; 非注册用户注册后可以使用本系统; 读者可以查询、借阅、归还图书等; 管理员可以对读者、图书进行管理。 1.2数据库设计概述 1.2.1概念结构设计 将从需求分析中得到的数据信息抽象为概念模型,经分析可得到数据库的E-R模型。如图所示。 图书 名称 作者 编号 出版日期 价格 种类 出版社 图1-1 图书实体ER图 密码 读者 姓名 编号 专业 借阅时间 借书量 年龄 性别 图1-2 实体读者ER图 用户 密码 类型 编号 图1- 3 用户实体ER图 1.2 项目规划 图书管理系统是一个典型的数据库应用程序,由应用程序和后台数据库两部分构成。 (1)应用程序 应用程序主要包括登录,注册,用户信息,读者信息,图书信息管理,借阅图书,综合查询,出版社信息等几个部分组成。 (2)数据库 数据库负责对图书信息,用户信息等数据的管理。 2 数据库设计说明书 2.1 数据库表结构 2.1.1 图书表book 2.1.2 借阅信息表borrow 2.1.2用户信息表Reader 2.1.4 用户信息权限表right 2.1.5用户账号表user 2.1.6 管理员账号表usererheper 2.2数据关系图 2.3图书管理系统暂有数据(模拟运行) 2.3.1管理员 学工号:2014701020 姓名:邢吉昌密码:111 2.3.2普通用户 学工号:2014701021 姓名:猪八戒密码:333 学工号:2014701022 姓名:孙悟空密码:444 2.3.3图书信息 编号 作者 书名 出版社 出版日期 价格 书类 H319584781 MARK C#入门经典 清华大学出版社 2011/4/5 21.56 计算机 H319584782 哪吒 和猴子的那些事 天庭文印 2010/1/2 216.5 情感 H319584783二郎神 我也可以闹天宫 天庭文印 2009/8/1 29.32 技术 3 程序功能的实现 3.1登陆界面 已注册用户登录时,用户类别选择普通用户或管理员,不选择会出现提示 主要代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; namespace WindowsFormsApplication1 { public partial class LoginForm : Form { public string password; private int ErrorTimes; string User, Pwd; bool flagshow = false; private bool yanzhengshuru() { password = textBox3.Text; if(Typename.Text.Trim()=="") { MessageBox.Show("请选择登录类型","登录提示", MessageBoxButtons.OK,MessageBoxIcon.Information); Typename.Focus(); return false; } else if(loginid.Text.Trim()=="") { MessageBox.Show("请输入用户名", "登录提示", MessageBoxButtons.OK, MessageBoxIcon.Information); loginid.Focus(); return false; } else if (password == "") { MessageBox.Show("请输入密码", "登录提示", MessageBoxButtons.OK, MessageBoxIcon.Information); textBox3.Focus(); return false; } else { return true; } } public LoginForm() { InitializeComponent(); } private void cancelbtn_Click(object sender, EventArgs e) { Application.Exit(); } private void LoginForm_Load(object sender, EventArgs e) { } private void LoginForm_Closing(object sender, FormClosingEventArgs e) { Application.Exit(); } private void loginbtn_Click(object sender, EventArgs e) { if (yanzhengshuru()) { if (Typename.Text.Trim() == "管理员") { SqlConnection conConnection = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=学生管理数据库;Integrated Security=True"); conConnection.Open(); string cmd = "select AdminID,AdminPass from userhelper "; SqlCommand com = new SqlCommand(cmd, conConnection); SqlDataReader reader = com.ExecuteReader(); while (reader.Read()) { User = reader["AdminID"].ToString(); Pwd = reader["AdminPass"].ToString(); if (User.Trim() == loginid.Text & Pwd.Trim() == textBox3.Text) { flagshow = true; } } reader.Close(); conConnection.Close(); if (flagshow == true) { this.Hide(); admin f1 = new admin (); f1.ShowDialog(); } } else { if (Typename.Text.Trim() == "普通用户") { SqlConnection conConnection1 = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=学生管理数据库;Integrated Security=True"); conConnection1.Open(); string cnd = "select ReaderID,ReaderPassword from reader "; SqlCommand cnm = new SqlCommand(cnd, conConnection1); SqlDataReader reader1 = cnm.ExecuteReader(); while (reader1.Read()) { User = reader1["ReaderID"].ToString(); Pwd = reader1["ReaderPassword"].ToString(); if (User.Trim() == loginid.Text & Pwd.Trim() == textBox3.Text) { flagshow = true; } } reader1.Close(); conConnection1.Close(); if (flagshow == true) { this.Hide(); 读者查阅 f1 = new 读者查阅(); f1.ShowDialog(); } else { MessageBox.Show("用户名不存在或密码错误!", "提示"); ErrorTimes++; if (ErrorTimes >= 3) { MessageBox.Show("登录次数过多,程序将关闭"); //Application.Exit(); return; } } } } } } private void label1_Click(object sender, EventArgs e) { } private void label2_Click(object sender, EventArgs e) { } private void label3_Click(object sender, EventArgs e) { } private void button1_Click(object sender, EventArgs e) { this.Hide(); 注册 f1 = new 注册(); f1.ShowDialog(); } private void usercomboBox_SelectedIndexChanged(object sender, EventArgs e) { } private void useracctxt_TextChanged(object sender, EventArgs e) { } private void textBox3_TextChanged(object sender, EventArgs e) { } } } 3.2登陆界面 如果学号已经存在,则会出现“*用户名已经存在,请重新输入”的提示,当重新输入密码时,如果两次密码不相同,则会出现“*请注意,两次密码不一样”的提示 主要代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; namespace WindowsFormsApplication1 { public partial class 注册 : Form { public 注册() { InitializeComponent(); } public bool UserFlag; private void textBox3_TextChanged(object sender, EventArgs e) { if (textBox2.Text.Trim() != textBox3.Text.Trim()) { label6.Visible = true; } else { label8.Visible = true; label6.Visible = false; } } private void 注册_Load(object sender, EventArgs e) { } private void textBox1_TextChanged(object sender, EventArgs e) { SqlConnection conConnection = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=学生管理数据库;Integrated Security=True"); conConnection.Open(); string cmd = "select ReaderID from reader "; SqlCommand com = new SqlCommand(cmd ,conConnection ); SqlDataReader readerUser = com.ExecuteReader(); while (readerUser.Read ()) { if(textBox1.Text ==readerUser["ReaderID"].ToString().Trim()) { label7.Visible = true; UserFlag = true; return; } else if (textBox1.Text != readerUser["ReaderID"].ToString().Trim()) { label7.Visible = false; label9.Visible = true; UserFlag = false; } } } private void button1_Click(object sender, EventArgs e) { int index = textBox4.Text.IndexOf("@"); if (index < 1) { label10.Visible = true; label10.Text = "邮箱格式不正确,请重新输入"; } else { label10.Visible = true; label10.Text = "邮箱格式正确"; } if(UserFlag==true ) { MessageBox.Show("用户已经存在,请重新输入!"); return; } if (UserFlag==false) { SqlConnection conConnection = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=学生管理数据库;Integrated Security=True"); conConnection.Open(); string cmd = "insert into reader(ReaderID,ReaderPassword,ReaderEmall) values ('"+textBox1.Text+"',"+"'"+textBox2.Text+"',"+"'"+textBox4.Text+"')"; SqlCommand com = new SqlCommand(cmd,conConnection ); com.ExecuteNonQuery(); conConnection.Close(); MessageBox.Show("注册成功!点击确定,返回登录界面。","提示"); this.Close(); LoginForm f2 = new LoginForm(); } } } } 3.3管理员操作界面 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class admin : Form { public admin() { InitializeComponent(); } private void 查看用户信息ToolStripMenuItem_Click(object sender, EventArgs e) { 权限设置 f8 = new 权限设置(); f8.ShowDialog(); } private void 查看用户信息ToolStripMenuItem1_Click(object sender, EventArgs e) { 用户信息 fi = new 用户信息(); fi.ShowDialog(); } private void 新增用户ToolStripMenuItem1_Click(object sender, EventArgs e) { 新增用户 f2 = new 新增用户(); f2.ShowDialog(); } private void 删除用户ToolStripMenuItem1_Click(object sender, EventArgs e) { 用户信息 f3 = new 用户信息(); f3.button2.Visible = true; f3.ShowDialog(); } private void 录入书籍ToolStripMenuItem_Click(object sender, EventArgs e) { 书籍信息 f5 = new 书籍信息(); f5.ShowDialog(); } private void 删除书籍ToolStripMenuItem_Click(object sender, EventArgs e) { 删除书籍 f6 = new 删除书籍(); f6.ShowDialog(); } private void 还书处理ToolStripMenuItem_Click(object sender, EventArgs e) { 还书处理 f9 = new 还书处理(); f9.ShowDialog(); } private void admin_Load(object sender, EventArgs e) { } private void 借阅处理ToolStripMenuItem_Click(object sender, EventArgs e) { 借阅处理 f10 = new 借阅处理(); f10.ShowDialog(); } } } 3.3.1管理用户 管理用户下共有三个子菜单 3.3.1.1 新增用户界面 主要代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; namespace WindowsFormsApplication1 { public partial class 新增用户 : Form { public 新增用户() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { SqlConnection conConnection = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=学生管理数据库;Integrated Security=True"); conConnection.Open(); string cmd = "insert into reader(ReaderID,ReaderName,ReaderPassword,ReaderSex,ReaderAge,ReaderDept,ReaderZhuanYe,MaxNumber,ReaderEmall) values ('" + textBox1.Text + "'," + "'" + textBox2.Text + "'," + "'" + textBox3.Text + "'," + "'" + textBox4.Text + "'," + "'" + textBox5.Text + "'," + "'" + textBox6.Text + "'," + "'" + textBox7.Text + "'," + "'" + textBox8.Text + "'," + "'" + textBox9.Text + "')"; SqlCommand com = new SqlCommand(cmd, conConnection); com.ExecuteNonQuery(); conConnection.Close(); MessageBox.Show("添加成功!点击确定,返回登录界面。", "提示"); this.Close(); } } } 3.3.1.2删除用户界面 输入学号即可查询用户信息,如图,点击删除即删除该用户 主要代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; namespace WindowsFormsApplication1 { public partial class 用户信息 : Form { bool UserFlag; public 用户信息() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { if(UserFlag==false ) { MessageBox.Show("不存在该用户,请核对后再输入","警告"); return; } if (UserFlag == true) { SqlConnection conConnection = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=学生管理数据库;Integrated Security=True"); conConnection.Open(); string cmd = "select * from reader"; SqlCommand com=new SqlCommand (cmd,conConnection); com.CommandText = "select * from reader"; SqlDataReader dr = com.ExecuteReader(); while (dr.Read()) { label11.Visible = true; textBox2.Text = dr["ReaderName"].ToString().Trim(); textBox3.Text = dr["ReaderPassword"].ToString().Trim(); textBox4.Text = dr["ReaderSex"].ToString().Trim();
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服