如何获取 .net 中查询更新的行数
How to get number of rows updated by a query in .net
在我的数据库中,我有一个触发器,它在更新 Table tblA 中的一行时插入更改日志条目。
现在,在我的代码中,我必须通过像
这样的普通Sql查询来更新它
int count = DBContext.ExecuteStoreCommand("<sql query to update records>");
此计数变量包含由于查询而受影响的行数(更新的行数 + 插入的行数)。
所以我的问题是,我怎样才能只获得更新的行数?
目前我正在使用Entity framework 4.我已经通过连接或断开连接的模型寻找解决方案,但无法帮助自己。
int count = DBContext.ExecuteStoreCommand("");
我认为您需要将其更改为 return Select 结果集
然后这样做,
<sql query to update>
Select @@RowCount rowcountAffected
或者
假设你的更新是
update table1 set col1='foo' where id=2
select count(*) rowcountAffected from table1 where id=2
影响 return 行的最有效方法可以是
i) 假设你只更新(之后不刷新任何记录)
Put Set Nocount ON
Declare @Output parameter inside proc
在我的数据库中,我有一个触发器,它在更新 Table tblA 中的一行时插入更改日志条目。
现在,在我的代码中,我必须通过像
这样的普通Sql查询来更新它int count = DBContext.ExecuteStoreCommand("<sql query to update records>");
此计数变量包含由于查询而受影响的行数(更新的行数 + 插入的行数)。
所以我的问题是,我怎样才能只获得更新的行数?
目前我正在使用Entity framework 4.我已经通过连接或断开连接的模型寻找解决方案,但无法帮助自己。
int count = DBContext.ExecuteStoreCommand("");
我认为您需要将其更改为 return Select 结果集
然后这样做,
<sql query to update>
Select @@RowCount rowcountAffected
或者 假设你的更新是
update table1 set col1='foo' where id=2
select count(*) rowcountAffected from table1 where id=2
影响 return 行的最有效方法可以是
i) 假设你只更新(之后不刷新任何记录)
Put Set Nocount ON
Declare @Output parameter inside proc