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.