Sql Server update问题
刚学ado.net,遇到一个问题
private void Form1_Load(object sender, EventArgs e)
{
sc = new SqlConnection("Server = localhost; database = StepSample; Integrated Security = True");
sc.Open();
ds = new System.Data.DataSet();
sda = new SqlDataAdapter("select * from Test", sc);
scb = new SqlCommandBuilder(sda);
sda.Fill(ds, "Test");
DataRow dr = ds.Tables[0].NewRow();
dr["name"] = "szz";
dr["Id"] = 12;
ds.Tables[0].Rows.Add(dr);
sda.Update(ds, "Test");
sc.Close();
}
这样在表里增加一行就可以更新,但是如果是
sc = new SqlConnection("Server = localhost; database = StepSample; Integrated Security = True");
sc.Open();
ds = new System.Data.DataSet();
sda = new SqlDataAdapter("select * from Test", sc);
scb = new SqlCommandBuilder(sda);
sda.Fill(ds, "Test");
ds.Tables[0].Rows[0]["name"] = "zz";
sda.Update(ds, "Test");
sc.Close();
只修改表里的数据,就会报错
“System.InvalidOperationException”类型的未经处理的异常在 System.Data.dll 中发生
其他信息: 对于不返回任何键列信息的 SelectCommand,不支持 UpdateCommand 的动态 SQL 生成。
请问错在哪里了?