(通过直接更新DataGridView中的数据)
以下代码实现使用DataTable更新数据库中的表的操作:
SqlDataAdapter adapter = new SqlDataAdapter(queryString, connString); SqlCommandBuilder sb = new SqlCommandBuilder(adapter); // 不添加会报错 adapter.Update(dt); // datatable
其中,SqlCommandBuilder是用来自动生成添加、删除、修改的语句,注意参数是之前创建的SqlDataAdapter。
SqlDataAdapter adapter = null; DataSet dSet = null; private static string strConn = "server=.\sqlexpress;database=MySchool;uid=sa;pwd=123456"; private void Form3_Load(object sender, EventArgs e) { adapter = new SqlDataAdapter("select * from UserInfo", strConn); dSet = new DataSet(); adapter.Fill(dSet); DGVMain.DataSource = dSet.Tables[0]; } private void button1_Click(object sender, EventArgs e) { //创建命令重建对象 SqlCommandBuilder scb = new SqlCommandBuilder(adapter); //更新数据 try { //这里是关键 adapter.Update(dSet); } catch (SqlException ex) { MessageBox.Show(ex.Message); } }