昨天在做C#一个小程序的时候也遇到了“对于不返回任何基表信息的 SelectCommand 不支持动态 SQL 生成”的错误提示。经过GOOGLE上的搜索,绝大多数的帖子都指出是由于表没有定义主键引起的,但是我的表的确是有主键定义了的,在代码中关联了主键也不行。最后终于解决。红色部分为添加部分(thisBuilder 声明:SqlCommandBuilder thisBuilder;)使用SqlCommand的也应该可以。
try
{
String device_next_id = this.getnextid();
DataTable dt = new DataTable();
dt = mydataset.Tables["device"];
DataRow newRow = dt.NewRow();
newRow["设备编码"] = device_next_id.ToString();
newRow["设备名称"] = this.textBox1.Text.ToString().Trim();
newRow["设备类型"] = this.cmbType.Text.ToString().Trim();
dt.Rows.Add(newRow);
thisBuilder.RefreshSchema();
thisAdapter.UpdateCommand = thisBuilder.GetUpda