form1.cs

来自「小型图书馆管理系统能够实现图书馆用户信息和图书的存储以及查询。」· CS 代码 · 共 861 行 · 第 1/3 页

CS
861
字号
					, "保存提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
				//取得用户的选择
				if(myresult == DialogResult.Yes)
				{
					//如果选择了yes
					BtSave.PerformClick();
					//执行保存按钮的操作
				}
				Application.Exit();
				//退出应用程序
				return;
				//退出子程序
			}
			try
			{
				myrow = mytable.Rows[rownumber];
				//取得当前行
				TxtBookID.Text = myrow[0].ToString();
				//显示图书编号
				TxtBookName.Text = myrow[1].ToString();
				//显示图书名称
				TxtState.Text = myrow[2].ToString();
				//显示图书当前状态
			}
			catch
			{
				MessageBox.Show("错误", "错误信息"
					, MessageBoxButtons.OK, MessageBoxIcon.Error);
				//显示错误信息
			}
		}

		private void BtAdd_Click(object sender, System.EventArgs e)
		{

			String insertSQL="INSERT INTO tblbooks ( BookID,"
				+" bookName, State) VALUES (@bookid, @bookname, @state)";
			//建立添加查询字符串
			myCmd =new OleDbCommand(insertSQL,myConnection);
			//建立添加命令
			myCmd.Parameters.Add(new OleDbParameter("@bookid",OleDbType.Char,10));
			myCmd.Parameters["@bookid"].Value=TxtBookID.Text;
			//建立参数用于存放书籍ID
			myCmd.Parameters.Add(new OleDbParameter("@bookname",OleDbType.Char,10)); //???
			myCmd.Parameters["@bookname"].Value=TxtBookName.Text;
			//建立参数用于存放书籍名称
			myCmd.Parameters.Add(new OleDbParameter("@state",OleDbType.Char,1));
			myCmd.Parameters["@state"].Value=TxtBookID.Text;
			//建立参数用于存放书籍状态
			myCmd.Connection.Open();
			//打开连接
			try
			{
				myCmd.ExecuteNonQuery();// 主要用于判断是否对数据库执行了相应的操作,不返回任何值
				//执行查询
				MessageBox.Show("添加成功");
			}
			catch
			{
				MessageBox.Show("添加发生错误检查参数是否和法");
				myCmd.Connection.Close();
				return;
			}
			myCmd.Connection.Close();
			//关闭数据库连接			
			//以下清空显示
			TxtBookID.Text = "";
			TxtBookName.Text = "";
			TxtState.Text = "";	
			OpenDb();
		}

		private void BtSave_Click(object sender, System.EventArgs e)
		{			
			myAdapter.Update(ds, "tblbooks");
		}

		private void BtDel_Click(object sender, System.EventArgs e)
		{
			String delSQL="DELETE FROM tblbooks WHERE"
				+" (((tblbooks.BookID)=[@bookid]))";
			myCmd =new OleDbCommand(delSQL,myConnection);
			//建立添加命令
			myCmd.Parameters.Add(new OleDbParameter("@bookid",OleDbType.Char,10));
			myCmd.Parameters["@bookid"].Value=TxtBookID.Text;
			//建立参数用于存放书籍ID
			myCmd.Connection.Open();
			//打开连接
			try
			{
				myCmd.ExecuteNonQuery();
				//执行查询
				MessageBox.Show("删除成功");
			}
			catch
			{
				MessageBox.Show("删除发生错误检查参数是否合法");
				myCmd.Connection.Close();
				return;
			}
			myCmd.Connection.Close();
			//关闭数据库连接	
			//以下清空显示
			TxtBookID.Text = "";
			TxtBookName.Text = "";
			TxtState.Text = "";
			OpenDb();
		}

		private void BtEdit_Click(object sender, System.EventArgs e)
		{
			String updateSQL="UPDATE tblbooks SET tblbooks.BookID"
				+" = [@bookid], tblbooks.bookName = [@bookname], "
				+"tblbooks.State = [@state] WHERE [tblbooks].[BookID]=[@bookid]";
			//建立添加查询字符串
			myCmd =new OleDbCommand(updateSQL,myConnection);
			//建立添加命令
			myCmd.Parameters.Add(new OleDbParameter("@bookid",OleDbType.Char,10));
			myCmd.Parameters["@bookid"].Value=TxtBookID.Text;
			//建立参数用于存放书籍ID
			myCmd.Parameters.Add(new OleDbParameter("@bookname",OleDbType.Char,10));
			myCmd.Parameters["@bookname"].Value=TxtBookName.Text;
			//建立参数用于存放书籍名称
			myCmd.Parameters.Add(new OleDbParameter("@state",OleDbType.Char,1));
			myCmd.Parameters["@state"].Value=TxtState.Text;
			//建立参数用于存放书籍状态
			myCmd.Connection.Open();
			//打开连接
			try
			{
				myCmd.ExecuteNonQuery();
				//执行查询
				MessageBox.Show("编辑成功");
			}
			catch
			{
				MessageBox.Show("编辑发生错误检查参数是否和法");
				myCmd.Connection.Close();
				return;
			}
			myCmd.Connection.Close();
			//关闭数据库连接	
			OpenDb();
		}

		private void BtSearch_Click(object sender, System.EventArgs e)
		{
			String SearchSQLStr="";
			//定义查询字符串
			OleDbDataAdapter Searchcmd ;
			//定义查询用ADODataSetCommand对象
			DataSet searchds = new DataSet();
			//定义查询DataSet对象
			DataTable Searchtable;
			//定义查询DataTable对象
			DataRow searchrow;
			//定义查询DataRow对象
			switch(Cmbtype.SelectedIndex)
			{
				case -1:
					MessageBox.Show("请先选择查询类型。"
						, "查询操作失败", MessageBoxButtons.OK
						, MessageBoxIcon.Information);
					//显示查询操作失败的原因
					return;
					//退出子程序
				case 0:
					//建立按图书编号查询SQL语句
					if(txtSearch.Text.Length==0)
					{
						MessageBox.Show("请在文本框中输入查询需要的条件"
							, "操作失败", MessageBoxButtons.OK
							, MessageBoxIcon.Error);
						//显示操作失败原因
						return;
						//退出子程序
					}
					SearchSQLStr = "SELECT BookID, bookName, State " +
						"FROM tblbooks " +
							"WHERE (BookID = '" + txtSearch.Text + "')";
					break;
				case 1:
					//建立按图书名称查询SQL语句
					if(txtSearch.Text.Length==0)
					{
						MessageBox.Show("请在文本框中输入查询需要的条件"
							, "操作失败"
							, MessageBoxButtons.OK, MessageBoxIcon.Error);
						//显示操作失败原因
						return;
						//退出子程序
					}
					SearchSQLStr = "SELECT BookID, bookName, State " +
						"FROM tblbooks " +
							"WHERE (bookName = '" + txtSearch.Text + "')";
					break;
				case 2:
					//建立查询查找图书总数
					SearchSQLStr = "SELECT COUNT(bookName) " +
						"FROM tblbooks ";
					Searchcmd = new OleDbDataAdapter(SearchSQLStr
										,"Provider=Microsoft.Jet.OLEDB.4.0;"
                                        + "Data Source=D:\\gaochao\\C#教程\\精通C#数据库编程实例\\chap12\\图书管理系统\\bin\\Debug\\lib.mdb");
					//执行查询
					Searchcmd.Fill(searchds, "tblbooks");
					Searchtable = searchds.Tables[0];
					searchrow = Searchtable.Rows[0];
					MessageBox.Show("图书总数为:" + searchrow[0].ToString()
						, "信息框", MessageBoxButtons.OK, MessageBoxIcon.Information);
					//显示图书总数
					return;
					//退出子程序
			}
			Searchcmd =new OleDbDataAdapter(SearchSQLStr,"Data Source=D:\\gaochao\\C#教程\\精通C#数据库编程实例\\chap12\\图书管理系统\\bin\\Debug\\lib.mdb");
				//,"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\gaochao\\C#教程\\精通C#数据库编程实例\\chap12\\图书管理系统\\bin\\Debug\\lib.mdb");
			//执行查询
			Searchcmd.Fill(searchds, "tblbooks");
			Searchtable = searchds.Tables[0];
			try
			{
				searchrow = Searchtable.Rows[0];
			}
			catch
			{
				//如果没有查找到
				MessageBox.Show("没有查找到该图书的信息。"
					, "查询结果", MessageBoxButtons.OK
					, MessageBoxIcon.Error);
				//显示没有查找到信息
				return;
				//退出子程序
			}
			TxtBookID.Text = searchrow[0].ToString();
			//显示图书编号
			TxtBookName.Text = searchrow[1].ToString();
			//显示图书名称
			TxtState.Text = searchrow[2].ToString();
			//显示图书当前状态
		}

		private void BtSearchID_Click(object sender, System.EventArgs e)
		{
			String SearchSQLStr;
			//定义查询字符串
			OleDbDataAdapter Searchcmd;
			//定义查询用ADODataSetCommand对象
			DataSet searchds=new DataSet();
			//定义查询DataSet对象
			if(txtSearchID.Text.Length==0)
			{
				MessageBox.Show("请在文本框中输入要查询的图书编号"
					, "操作失败", MessageBoxButtons.OK
					, MessageBoxIcon.Error);
				//显示操作失败原因
				return;
				//退出子程序
			}
			SearchSQLStr = "SELECT tblborrow.BookID, tblborrow.BorrowData," 
				+ "tblborrow.[Number],tblstudents.Name  "
				+"FROM tblborrow INNER JOIN  " 
				+"tblstudents ON tblborrow.[Number] = tblstudents.[Number]  "
				+"GROUP BY tblborrow.BookID, tblborrow.BorrowData, "
				+ "tblborrow.[Number], tblstudents.Name "
				+" HAVING (tblborrow.BookID = '" + txtSearchID.Text + "')";
			//建立查询语句
			Searchcmd = new OleDbDataAdapter(SearchSQLStr
				,"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\lib.mdb");//数据引擎和数据源,用于连接特定的数据库
			//执行查询
			Searchcmd.Fill(searchds, "tblbooks");
			myAdapter.Fill(searchds, "tblborrow");
			//将查询结果装入ds
			GRDbooks.DataSource = searchds.Tables[0].DefaultView;
			//在DBgird控件中显示查询结果
		}

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void GroupBox1_Enter(object sender, EventArgs e)
        {

        }
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?