Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Instrukcja ExecuteNonQuery for SELECT sql nie zwraca żadnych wierszy

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.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak wyświetlić wiele zapytań i wyników obok siebie w SQL Server Management Studio (SSMS) — samouczek SQL Server / TSQL, część 14

  2. Jak zwrócić listę typów danych w SQL Server (T-SQL)

  3. Sprawdź stan wszystkich wiadomości pocztowych bazy danych w programie SQL Server (T-SQL)

  4. Jak znaleźć katalog danych dla instancji SQL Server?

  5. ADO.net SqlTransaction poprawia wydajność