ExecuteNonQuery Method
zwraca liczbę wierszy, na które ma wpływ INSERT
, UPDATE
lub DELETE
. Ta metoda ma być używana do wykonywania instrukcji DML (języka manipulacji danymi), jak wspomniano wcześniej.
ExecuteReader Method
zwróci zestaw wyników SELECT
. Ta metoda ma być używana, gdy pytasz o wiele wyników, takich jak wiersze z tabeli, widok, cokolwiek.
ExecuteScalar Method
zwróci pojedynczą wartość w pierwszym wierszu, pierwszej kolumnie z SELECT
oświadczenie. Tej metody należy używać, gdy oczekujesz, że zwrócona zostanie tylko jedna wartość z zapytania.
Krótko mówiąc, to normalne, że nie masz wyników z SELECT
oświadczenie podczas korzystania z ExecuteNonQuery metoda. Użyj ExecuteReader zamiast. Korzystanie z ExecuteReader
dowie się, ile wierszy zostało zwróconych przez instancję SqlDataReader
obiekt zwrócony.
int rows = 0;
if (reader.HasRows)
while (reader.Read())
rows++;
return rows; // Returns the number of rows read from the reader.