




已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档高级程序设计语言图书管理系统设计报告 学院: 国土资源工程学院 专业: 测 绘 工 程 成员:*指导教师:黄云铠日期: 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 数据库设计说明书21 数据库表结构2.1.1 图书表book2.1.2 借阅信息表borrow2.1.2用户信息表Reader2.1.4 用户信息权限表right2.1.5用户账号表user2.1.6 管理员账号表usererheper2.2数据关系图2.3图书管理系统暂有数据(模拟运行)2.3.1管理员学工号:2014701020 姓名:邢吉昌密码:1112.3.2普通用户学工号:2014701021 姓名:猪八戒密码:333学工号:2014701022 姓名:孙悟空密码:4442.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 = readerAdminID.ToString(); Pwd = readerAdminPass.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 = reader1ReaderID.ToString(); Pwd = reader1ReaderPassword.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 =readerUserReaderID.ToString().Trim() label7.Visible = true; UserFlag = true; return; else if (textBox1.Text != readerUserReaderID.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管理用户管理用户下共有三个子菜单新增用户界面主要代码如下: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(); 删除用户界面输入学号即可查询用户信息,如图,点击删除即删除该用户主要代码如下: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 = drReaderName.ToString().Trim(); textBox3.Text = drReaderPassword.ToString().Trim(); textBox4.Text = drReaderSex.ToString().Trim(); textBox5.Text = drReaderAge.ToString().Trim(); textBox6.Text = drReaderDept.ToString().Trim(); textBox7.Text = drReaderZhuanYe.ToString().Trim(); textBox8.Text = drMaxNumber.ToString().Trim(); textBox9.Text = drReaderEmall.ToString().Trim(); conConnection.Close(); 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 = readerUserReaderID.ToString().Trim() UserFlag = true; return; else if (textBox1.Text != readerUserReaderID.ToString().Trim() UserFlag = false; private void button2_Click(object sender, EventArgs e) SqlConnection conConnection = new SqlConnection(Data Source=.sqlexpress;Initial Catalog=学生管理数据库;Integrated Security=True); conConnection.Open(); string cmd = delete from reader where ReaderID= + textBox1.Text.Replace(, ) + ; SqlCommand com = new SqlCommand(cmd, conConnection); com.ExecuteNonQuery(); conConnection.Close(); MessageBox.Show(是否确认删除, 提示); 查看用户信息界面该界面与删除用户界面代码基本相似,主要是将查询按钮隐藏,故代码不再列出3.3.2图书管理图书查询下共有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(); 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 book (BookID,BookWrite,BookName,BookPublish,BookPublishDate,BookPrice,BookSort) values ( + textBox1.Text + , + + textBox2.Text + , + + textBox3.Text + , + + textBox4.Text + , + + textBox5.Text + , + + textBox6.Text + , + + textBox7.Text + ); SqlCommand com = new SqlCommand(cmd, conConnection); com.ExecuteNonQuery(); conConne
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 家具行业设计师职业生涯发展路径试题及答案
- 绿色消费理念传播与绿色家居行业消费行为引导报告
- 天津体育学院《钢琴与即兴伴奏三》2023-2024学年第一学期期末试卷
- 学校体育馆智能化照明系统设计评估报告:2025年创新应用
- 太原科技大学《车用电机原理》2023-2024学年第二学期期末试卷
- 爬坡挑战测试题及答案
- 民政局模拟试题及答案
- 深海矿产资源勘探技术革新在2025年的突破性进展分析
- 煤矿应急考试题及答案
- 厦门华厦学院《农田杂草鉴定(实验)》2023-2024学年第二学期期末试卷
- 2025年发展对象考试题库含答案
- 雅马哈便携式扩声系统STAGEPAS 600i使用说明书
- 2024年广东省高考化学试题(含答案解析)
- 文艺学名著导读学习通超星期末考试答案章节答案2024年
- 子女抚养协议合同模板
- 健康证记录表-自动提示过期功能
- 四川省2024年中考生物试卷十二套合卷【附答案】
- 广东省专业技术人员申报专业技术资格评前公示情况表
- “新课程”“新高考”背景下的高中学科教学变革
- 教育质量评价模型与算法研究
- 辽宁省沈阳市第一二六中学2023-2024学年七年级下学期期中数学试题
评论
0/150
提交评论