Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

SQL SELECT con stored procedure e parametri?

Ecco dove sbagli:

cmd.ExecuteNonQuery();

Tu sei esecuzione di una query.

Devi ExecuteReader o ExecuteScalar invece. ExecuteReader viene utilizzato per un set di risultati (più righe/colonne), ExecuteScalar quando la query restituisce un singolo risultato (restituisce object , quindi è necessario trasmettere il risultato al tipo corretto).

var result = (int)cmd.ExecuteScalar();

I results la variabile ora conterrà un OledbDataReader o un valore con i risultati di SELECT . Puoi scorrere i risultati (per un lettore) o il valore scalare (per uno scalare).