Hier machen Sie einen Fehler:
cmd.ExecuteNonQuery();
Sie sind Ausführen einer Abfrage.
Sie müssen ExecuteReader
oder ExecuteScalar
stattdessen. ExecuteReader wird für eine Ergebnismenge (mehrere Zeilen/Spalten) verwendet, ExecuteScalar wenn die Abfrage ein einzelnes Ergebnis zurückgibt (sie gibt object zurück , daher muss das Ergebnis in den richtigen Typ umgewandelt werden).
var result = (int)cmd.ExecuteScalar();
Die results Variable enthält jetzt einen OledbDataReader
oder ein Wert mit den Ergebnissen von SELECT . Sie können über die Ergebnisse (für einen Leser) oder den Skalarwert (für einen Skalar) iterieren.