sql >> Databáze >  >> RDS >> Sqlserver

ExecuteNonQuery pro příkaz SELECT sql nevrací žádné řádky

ExecuteNonQuery Method vrátí počet řádků ovlivněných buď INSERT , UPDATE nebo DELETE . Tato metoda se používá k provádění příkazů DML (jazyk manipulace s daty), jak bylo uvedeno výše.

ExecuteReader Method vrátí sadu výsledků SELECT . Tato metoda se používá, když se dotazujete na spoustu výsledků, jako jsou řádky z tabulky, zobrazení, cokoliv.

ExecuteScalar Method vrátí jednu hodnotu v prvním řádku, prvním sloupci z SELECT prohlášení. Tato metoda se používá, když očekáváte, že se z dotazu vrátí pouze jedna hodnota.

Zkrátka je normální, že z SELECT nemáte žádné výsledky při používání ExecuteNonQuery metoda. Použijte ExecuteReader namísto. Pomocí ExecuteReader metoda, bude vědět, kolik řádků bylo vráceno prostřednictvím instance SqlDataReader objekt vrácen.

int rows = 0;

if (reader.HasRows)
    while (reader.Read())
        rows++;

return rows; // Returns the number of rows read from the reader.


  1. Oracle (ORA-02270) :Pro tuto chybu seznamu sloupců neexistuje odpovídající jedinečný nebo primární klíč

  2. PostgreSQL Column neexistuje, ale ve skutečnosti existuje

  3. Jak změnit datový adresář MySQL?

  4. Jak využít WebDev.WebServer.exe (VS Web Server) v x64?