我如何获取受此语句影响的记录数:
select * from x_table where column1 = 5
我以为
ExecuteNonQuery
是我需要的,但返回-1。我预期为2,因为我的表中有两个带有column1 = 5
的记录。如何获得正确的计数? 最佳答案
您正在调用ExecuteNonQuery
-但这是一个查询!您的语句不会影响任何行,因为它只是一个查询。您需要将计数部分放入查询中,如下所示:
select count(*) from x_table where column1 = 5
然后,获得结果的最简单方法是使用
ExecuteScalar
:int count = (int) command.ExecuteScalar();
您可以将其作为读取器执行并获得唯一的结果,但是
ExecuteScalar
更简单。关于c# - 受此语句影响的记录数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7325166/