gpt4 book ai didi

c# - 如何使用没有主键的 SqlAdapter.Update 更新表

转载 作者:行者123 更新时间:2023-11-30 12:44:29 25 4
gpt4 key购买 nike

我正在使用 SqlDataAdapter 更新 DataRow

我遇到了异常

Dynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not return any key column information

如果我将主键放入表中,就会出现错误。

但我不想把主键放在里面。

var dataAdapter = new SqlDataAdapter();
var updatedRows = Getting some row ...
dataAdapter.Update(updatedRows);

最佳答案

如果没有主键,您将无法依赖 SqlCommandBuilder 为您生成插入/更新/删除命令。

如果您仍想使用 SqlDataAdapter 修改数据,则需要显式设置适配器的 InsertCommand、UpdateCommand、DeleteCommand 属性。

这可能有助于您入门: https://msdn.microsoft.com/en-us/library/ms971491.aspx

编辑:没有主键,您在修改数据时必须非常小心。例如当执行 UPDATE sql 时,意外地为 DataRow 更新超过 1 行的表会容易得多。拥有主键将使事情变得更容易和更健壮。

关于c# - 如何使用没有主键的 SqlAdapter.Update 更新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28322342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com