1. 程式人生 > >ADO.NET入門學習筆記(二)

ADO.NET入門學習筆記(二)

pre ID ssa private 更新 clear event and form

gridView再winform中顯示數據庫的數據。

SqlDataAdapter, DataSet, DataTable的簡單應用

1,安裝學習筆記一的那幾步打開數據庫,然後使用。

 1         SqlDataAdapter da;       //數據適配器
 2         DataSet ds = new DataSet("StuMS");  //DataSet數據集
 3         DataTable dt = new DataTable();     //數據表
 4 
 5         private void button1_Click(object
sender, EventArgs e) 6 { 7 string sqlStr = "select * from Student"; 8 string connString = @"Data Source=DESKTOP-BO0VRVJ;Initial Catalog=StuMS;Integrated Security=True"; 9 SqlConnection conn = new SqlConnection(connString); 10 SqlCommand cmd = new
SqlCommand(sqlStr, conn); 11 12 conn.Open(); 13 14 da = new SqlDataAdapter(cmd); //創建數據適配器對象 15 da.Fill(ds, "StuMS"); //將查詢結果傳入數據集 16 dt = ds.Tables["StuMS"]; 17 18 conn.Close(); 19 20 dgv.DataSource = dt; //dgv是dataGridView控件
21 dgv.ReadOnly = true; 22 23 }

對於數據表中的數據可以用.Rows[行][列]訪問(查)

 1             for (int i = 0; i < dt.Rows.Count; i++)
 2             {
 3                 if (newName == dt.Rows[i][1].ToString().Trim())
 4                 {
 5                     MessageBox.Show("用戶名已存在!");
 6                     textBox1.Clear();
 7                     textBox1.Focus();
 8                     return;
 9                 }
10             }

再dataTables中添加一行(增)

1                DataRow dtR = dt.NewRow();  //創建新的一行
2                dtR["用戶名"] = newName;
3                dtR["密碼"] = "000000";
4                dtR["用戶類型"] = comboBox1.SelectedIndex == 0 ? 2 : 1;
5                dtR["狀態"] = 1;
6                dtR["姓名"] = textBox2.Text;
7                dt.Rows.Add(dtR);   //將新的這行添加到表裏

最後dataTables中的數據只是改在內存中的,可以在窗口關閉是檢查如果數據更新寫到數據庫中

1         private void Frm_Admin_Manage2_FormClosing(object sender, FormClosingEventArgs e)
2         {
3             SqlCommandBuilder cmdBld = new SqlCommandBuilder(da);
4             if (ds.HasChanges())
5             {
6                 da.Update(ds, "Admins");
7             }
8         }

ADO.NET入門學習筆記(二)