Tutaj się mylisz:
cmd.ExecuteNonQuery();
Jesteś jesteś wykonywanie zapytania.
Musisz ExecuteReader
lub ExecuteScalar
zamiast. ExecuteReader
jest używany dla zestawu wyników (kilka wierszy/kolumn), ExecuteScalar
gdy zapytanie zwraca pojedynczy wynik (zwraca object
, więc wynik musi być rzutowany na właściwy typ).
var result = (int)cmd.ExecuteScalar();
wyniki
zmienna będzie teraz przechowywać OledbDataReader
lub wartość z wynikami SELECT
. Możesz iterować wyniki (dla czytelnika) lub wartość skalarną (dla skalara).