ExecuteNonQuery Method връща броя на редовете, засегнати от INSERT , UPDATE или DELETE . Този метод трябва да се използва за изпълнение на DML (език за манипулиране на данни), както е посочено по-горе.
ExecuteReader Method ще върне резултатния набор от SELECT . Този метод трябва да се използва, когато правите заявки за куп резултати, като редове от таблица, изглед, каквото и да е.
ExecuteScalar Method ще върне една стойност в първия ред, първата колона от SELECT изявление. Този метод трябва да се използва, когато очаквате да бъде върната само една стойност от заявката.
Накратко, нормално е да нямате резултати от SELECT изявление, докато използвате ExecuteNonQuery метод. Използвайте ExecuteReader вместо. Използване на ExecuteReader метод, ще разбере колко реда са били върнати чрез екземпляра на SqlDataReader обектът е върнат.
int rows = 0;
if (reader.HasRows)
while (reader.Read())
rows++;
return rows; // Returns the number of rows read from the reader.