gpt4 book ai didi

c# - 我可以使用 ExecuteScalar 进行更新吗?

转载 作者:行者123 更新时间:2023-11-30 16:32:52 24 4
gpt4 key购买 nike

我正在使用 SQL Server 2005 和 C#。我想在向数据库中插入记录时获取主键值。

为此,我有一个 C# 方法,我可以在其中插入和更新记录。我正在使用 ExecuteScalar 方法进行插入和更新。

插入成功,但更新失败。如何使用 ExecuteScalar 获取更新的主键?

最佳答案

通常,ExecuteScalar 方法用于返回至少一个数据字段的查询(例如,来自 SELECT 查询的结果)。如果您只想执行某些操作,则应改用 ExecuteNonQuery 方法。

即使使用 ExecuteNonQuery 方法,您仍然可以在函数完成后读取参数值。例如,您的命令可能类似于:

INSERT INTO TableName(someFields) VALUES (someValues)
SET @Id = SCOPE_IDENTITY()

如果你使用自增键或者

SET @Id = newid()
INSERT INTO (ID, someFields) VALUES (@id, someValues)

如果您使用 uniqueidentifier 作为键。

之后,您可以将输出@Id 参数添加到命令,调用 ExecuteNonQuery,然后从参数中读取值。

关于c# - 我可以使用 ExecuteScalar 进行更新吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3699649/

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