sql >> Base de Datos >  >> RDS >> Sqlserver

SQL SELECT con procedimiento almacenado y parámetros?

Aquí es donde te equivocas:

cmd.ExecuteNonQuery();

Tu eres ejecutando una consulta.

Debe ExecuteReader o ExecuteScalar en cambio. ExecuteReader se utiliza para un conjunto de resultados (varias filas/columnas), ExecuteScalar cuando la consulta devuelve un único resultado (devuelve object , por lo que el resultado debe convertirse al tipo correcto).

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

Los results La variable ahora tendrá un OledbDataReader o un valor con los resultados de SELECT . Puede iterar sobre los resultados (para un lector) o el valor escalar (para un escalar).