在ExecuteNonQuery for SELECT sql语句未返回行之后,如何检查没有返回行?
所述ExecuteNonQuery Method受任一种返回的行(一个或多个)的数量INSERT,一个UPDATE或一个DELETE。如前所述,该方法将用于执行DML(数据操作语言)语句。
ExecuteNonQuery Method
INSERT
UPDATE
DELETE
在ExecuteReader Method返回的结果集的SELECT。查询一堆结果(例如表中的行,视图等)时,将使用此方法。
ExecuteReader Method
SELECT
该ExecuteScalar Method会的第一排,从第一列返回单个值SELECT的语句。当您期望查询中只返回一个值时,将使用此方法。
ExecuteScalar Method
简而言之,SELECT使用 ExecuteNonQuery 方法获取语句的结果是正常的。请改用 ExecuteReader 。使用该ExecuteReader方法,将了解通过SqlDataReader返回的对象实例返回的行数。
ExecuteReader
SqlDataReader
int rows = 0; if (reader.HasRows) while (reader.Read()) rows++; return rows; // Returns the number of rows read from the reader.