错误:
在传递带有修改行的DataRow集合时,更新需要有效的UpdateCommand。
现在这是我在网上找到的一个热门问题。有些人有答案,有些则没有答案。这是我的问题。我所做的只是按照 Book from Microsoft Press 中的教程,通过Windows身份验证连接到SQL Server数据库,然后从表中将两个字段拉成一个Form作为文本框,如屏幕截图所示。它有add, delete, update
个按钮(自动创建)。
然后它生成以下代码,并将错误指向UPDATE
行。我尝试做的事情,更新ID = 2 to ID = 3
。表中没有主键,因为我正在尝试ADO.Net端组件(连接/显示等)。
Private Sub Testdbtable1BindingNavigatorSaveItem_Click
(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Testdbtable1BindingNavigatorSaveItem.Click
Me.Validate()
Me.Testdbtable1BindingSource.EndEdit()
Me.TableAdapterManager.UpdateAll(Me.TestcmdDBDataSet) //-------<< error
End Sub
那么在表单中使用SAVE
或UPDATE
按钮的真正原因是什么?为什么不能保存我的记录变更?
答案 0 :(得分:0)
当表上没有主键时,tableadapter无法生成更新逻辑。添加PK,然后进入数据集的设计器并重新生成查询。确保此次生成了INSERT和UPDATE查询。