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