gpt4 book ai didi

c# - 使用 SqlCommandBuilder 后插入、删除和更新命令为空

转载 作者:太空宇宙 更新时间:2023-11-03 11:27:44 25 4
gpt4 key购买 nike

我有这种情况,我需要在 sqlcommandbuilder 生成后修改插入命令,我需要这样做才能在插入后获取 scope_identity。部分代码是:

adapterClients = new SqlDataAdapter (cmdClients, connString);
SqlCommandBuilder cmdBuilder = new SqlCommandBuilder (adapterClients);
adapterClients.Fill (dataSet, "Clients");
adapterClients.InsertCommand.CommandText += "; select ClientID = SCOPE_IDENTITY()";
adapterClients.InsertCommand.UpdatedRowSource = UpdateRowSource.FirstReturnedRecord;

我在 adapterClients.InsertCommand 上收到空异常。

最佳答案

自动生成的插入命令将成为构建器的一部分,而不是适配器。因此,您需要使用以下方法来检索插入命令:

cmdBuilder.GetInsertCommand()

因此,根据您尝试执行的具体操作,您可以使用以下内容 (1) 将生成的插入命令设置为适配器,然后 (2) 修改生成的插入命令以包括对 scope_identity 的检索。

adapterClients.InsertCommand = cmdBuilder.GetInsertCommand();
adapterClients.InsertCommand.CommandText += "; select ClientID = SCOPE_IDENTITY()";

关于c# - 使用 SqlCommandBuilder 后插入、删除和更新命令为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8845309/

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