環境:VS2010 +SqlServer 2008
首先,按照面向對象的程序設計思想,設計一個數據庫操作工具類MyTool.cs,該類中封裝了關于數據庫連接和操作的方法,各個功能模塊在需進行數據庫操作時只需調用相應的函數
//引入的命名空間using System.Data.SqlClient;//用于SQL Sever數據訪問的命名空間using System.Data; //DataSet類的命名空間using System.Windows.Forms; //DataGridView控件類的命名空間//執行指定的SQL命令語句(insert,delete,update等),并返回命令所影響的行數public static int executeCommand(string sqlStr){ SqlConnection sqlConnection1 = new SqlConnection("server=dell-PC;database=11071312HotelSys;uid=sa;pwd=xiaoyi9421");//創建數據庫連接(字符串中是我個人的數據庫信息) sqlConnection1.Open(); //打開數據庫連接 SqlCommand sqlCommand1 = new SqlCommand(sqlStr, sqlConnection1); //執行SQL命令 int Succnum = sqlCommand1.ExecuteNonQuery(); return Succnum;}//查詢(select)指定的數據記錄(多行多列),并填充到數據控件DataGridView中public static void queryDataToGrid(string sqlStr, DataGridView dataGridView1){ SqlConnection sqlConnection1 = new SqlConnection("server=dell-PC;database=11071312HotelSys;uid=sa;pwd=xiaoyi9421");//創建數據庫連接 SqlDataAdapter sqlDataAdapter1 = new SqlDataAdapter(sqlStr, sqlConnection1);//利用已創建好的sqlConnection1,創建數據適配器sqlDataAdapter1 DataSet dataSet1 = new DataSet(); //創建數據集對象 sqlDataAdapter1.Fill(dataSet1); //執行查詢,查詢的結果存放在數據集里 dataGridView1.DataSource = dataSet1.Tables[0]; //把數據集中的查詢結果綁定到dataGridView1中}//查詢(select)指定的數據(單個數據,假設為string類型),并返回public static string queryData(string sqlStr){ SqlConnection sqlConnection1 = new SqlConnection("server=dell-PC;database=11071312HotelSys;uid=sa;pwd=xiaoyi9421");//創建數據庫連接 SqlDataAdapter sqlDataAdapter1 = new SqlDataAdapter(sqlStr, sqlConnection1);//利用已創建好的sqlConnection1,創建數據適配器sqlDataAdapter1 DataSet dataSet1 = new DataSet(); //創建數據集對象 sqlDataAdapter1.Fill(dataSet1); //執行查詢,查詢的結果存放在數據集里 return dataSet1.Tables[0].Rows[0]["列名"].ToString(); //把查詢結果的第一行指定列下的數據以string類型返回}當在各個功能模塊中需要進行數據庫操作時,只需指定要執行的SQL語句,調用一下數據庫工具類中的方法即可實現,下面給了一些基本的的SQL操作(單表)
//增sqlStr = "insert into 表名( 列名1 , 列名2 )values( 插入值1 , 插入值2 )";//執行指定的SQL命令語句,并返回命令所影響的行數int Succnum = MyTool.executeCommand(sqlStr); if (Succnum > 0) MessageBox.Show("錄入成功");//刪sqlStr = "delete from 表名 where 刪除條件";int Succnum = MyTool.executeCommand(sqlStr); if (Succnum > 0) MessageBox.Show("刪除成功");//改sqlStr = "update 表名 set 列名1 = 更新值1 , 列名2 = 更新值2";int Succnum = MyTool.executeCommand(sqlStr); if (Succnum > 0) MessageBox.Show("更新成功");//查一組數據sqlStr = "select 列名1 , 列名2 from 表名 where 查詢表達式";MyTool.queryDataToGrid(sqlStr, dataGridView1);//填充到數據控件DataGridView中//查單個數據sqlStr = "select 列名 from 表名 where 查詢表達式";textBox1.Text = MyTool.queryData(sqlStr);//填充到文本框textBox1中新聞熱點
疑難解答