《C#面向对象程序设计》课程设计——图书借阅管理系统源码下载地址:院系:计算机学院专业:计算机科学与技术年级:2014级学生姓名://学号://教师://日期:2017年6月6日开发和运行环境-开发环境:Windows10-1703;-开发工具:VisualStudio013Update5;-数据库工具:Mysql5.7+NaviCat;-运行环境:Windows10-1703;需求分析1.【角色】用户通过【注册】成为本系统的可访问成员,通过【登陆】进入系统。用户可以操作的功能有:-查看图书馆的所有图书信息,图书的是否可借阅信息;-搜索功能:通过输入关键字,来查找是否有自己需要的图书;-借阅功能:未被其他用户借阅的书籍可以直接借阅;-还书功能:若存在之前借阅的书籍,在未归还的情况下,可以进行还书操作,若未存在需要还的书籍,提示:未有需要归还的书籍;-个人信息:修改除了【用户名】以外之前注册的全部信息;-借阅信息:可以查看借阅历史,曾经的借书日期和还书日期,是否有未归还的书等等;2.【角色】管理员通过【登陆】进入用户进入不了的管理系统。管理员可以操作的功能有:-图书信息修改:修改除了图书名的现有的所有图书信息;-添加图书:添加新的图书;-查看用户信息:可以查看用户表的部分用户信息;3.数据保存:需要长期保存在数据库的数据有:-图书信息:图书的基本信息;-读者信息:读者的基本信息;-借阅信息:图书的借阅信息;-帐号信息:图书管理员和读者的登录帐号;系统流程图(不包含注册功能)数据库设计说明-管理员表:adminInfo;-图书信息表:bookInfo;-借阅信息表:borrowed;-用户信息表:userInfo;adminInfo表列名数据类型可否为空长度说明adminIdint否11管理员IDadminNamevarchar否255管理员用户名adminPasswordvarchar否255管理员密码bookInfo表列名数据类型可否为空长度说明bookIdint否11图书编号IDbookNamevarchar否255图书名bookAuthorvarchar否255图书作者bookPriceint否11图书价格bookPressvarchar否255图书出版社bookTypevarchar是255图书类型isBorrowedtinyint是11是否被借阅borrowIdint是11借阅人的IDBorrowedTimedatetime是0被借阅的时间borrowed表列名数据类型可否为空长度说明borrowedIdint否11借阅信息IDuserIdint是11操作人IDuserNamevarchar是255操作人用户名bookIdint是11图书IDeditTimedatatime是0操作时间bookNamevarchar是255图书名editvarchar是255操作名UserInfo表列名数据类型可否为空长度说明userIdint否11用户IDuserNamevarchar否255用户名userPasswordvarchar否255用户密码userSexvarchar是255用户性别模块分析cs文件:主界面:主要显示代码–mainCenter.cs:publicmainCenter(){InitializeComponent();stringsql=server=localhost;userid=root;password=123456;database=C#librarycenter;//根据自己的设置MySqlConnectionconn=newMySqlConnection(sql);conn.Open();//打开数据库连接MySqlDataAdapterdata1=newMySqlDataAdapter();//实例化sqldataadpterMySqlCommandcmd1=newMySqlCommand(SELECTbookNameas'图书名',bookAuthoras'作者',bookPriceas'图书价格',bookPressas'出版社',bookTypeas'图书类型',(CASEisBorrowedWHEN0THEN'未借阅'ELSE'已借阅'END)as'借阅情况'FROM`c#librarycenter`.bookinfo,conn);//sql语句data1.SelectCommand=cmd1;//设置为已实例化SqlDataAdapter的查询命令DataTabledt=newDataTable();dt.Clear();data1.Fill(dt);//把数据填充到datatabledataGridView1.DataSource=dt;//将数据集绑定datagridview,完成显示dataGridView1.AllowUserToAddRows=false;//loginlogin=newlogin();label1.Text=这里是SMART-LIBRARY!用户:+login.username;//}查找功能:主要实现代码:privatevoidbutton1_Click(objectsender,EventArgse){Stringso=textBox1.Text;Stringsql=server=localhost;userid=root;password=123456;database=C#librarycenter;//根据自己的设置MySqlConnectionconn=newMySqlConnection(sql);conn.Open();//打开数据库连接MySqlDataAdapterdata1=newMySqlDataAdapter();//实例化sqldataadpterMySqlCommandcmd1=newMySqlCommand(SELECTbookNameas'图书名',bookAuthoras'作者',bookPriceas'图书价格',bookPressas'出版社',bookTypeas'图书类型',(CASEisBorrowedWHEN0THEN'未借阅'ELSE'已借阅'END)as'借阅情况'FROM`c#librarycenter`.bookinfowherebookNamelike'%+so+%',conn);//sql语句data1.SelectCommand=cmd1;//设置为已实例化SqlDataAdapter的查询命令//DataSetds1=newDataSet();//实例化datasetDataTabledt=newDataTable();dt.Clear();data1.Fill(dt);//把数据填充到datatabledataGridView1.DataSource=dt;//将数据集绑定datagridview,完成显示dataGridView1.AllowUserToAddRows=false;}借阅功能:主要实现代码-borrow.cs:privatevoiddataGridView1_CellContentClick(objectsender,DataGridViewCellEventArgse){intr=this.dataGridView1.CurrentRow.Index;stringh=this.dataGridView1.Rows[r].Cells[1].Value.ToString();strings=this.dataGridView1.Rows[r].Cells[2].Value.ToString();//loginlogin=newlogin();StringuserId=;DateTimedt=DateTime.Now;StringborrowedTime=dt.ToString(yyyy-MM-ddHH:mm:ss);stringsql=server=localhost;userid=root;password=123456;database=C#librarycenter;//根据自己的设置MySqlConnectionconn=newMySqlConnection(sql);StringupdateBorrow1=selectuserIdfromuserInfowhereuserName='+login.username+';MySqlCommandmysqlcommand=newMySqlCommand(updateBorrow1,conn);conn.Open();MySqlDataReadermdr=mysqlcommand.ExecuteReader();if(mdr.Read()){userId=mdr.GetString(0).ToString();}mdr.Close();StringupdateBorrow2=updatebookInfosetisBorrowed='1',borrowId='+userId+',borrowedTime='+borrowedTime+'wherebookId='+h+';//MySqlCommandmysqlcommand2=newMySqlCommand(updateBorrow2,conn);inti=mysqlcommand2.ExecuteNonQuery();if(i!=-1){MessageBox.Show(login.username+\r\n恭喜你借++s+\r\n这本书+成功);}else{MessageBox.Show(系统出了点问题,请联系管理员!);}//更新借阅表StringupdateBorrow3=insertintoborrowed(userId,userName,bookId,editTime,bookName,edit)values('+userId+','+login.username+','+h+','+borrowedTime+','+s+','借书');MySqlCommandmysqlcommand3=newMySqlCommand(updateBorrow3,conn);mysqlcommand3.ExecuteNonQuery();//刷新dataGridView1,重新绑定数据源f5();}归还图书功能:主要实现代码–returnbook.cs:privatevoiddataGridView1_CellContentClick(objectsender,DataGridViewCellEventArgse){intr=this.dataGridView1.CurrentRow.Index;stringh=this.dataGridView1.Rows[r].Cells[1].Value.ToString();strings=this.dataGridView1.Rows[r].Cells[2].Value.ToString();DateTimedt=DateTime.Now;StringreturnedTime=dt.ToString(yyyy-MM-ddHH:mm:ss);StringuserId=;stringsql=server=localhost;userid=root;password=123456;database=C#librarycenter;//根据自己的设置MySqlConnectionconn=newMySqlConnection(sql);conn.Open();//StringupdateBorrow1=updatebookInfosetisBorrowed='0',borrowId=null,borrowedTime=nullwherebookId='+h+';MySqlCommandmysqlcommand2=newMySqlCommand(updateBor