Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Como usar o parâmetro OUTPUT no procedimento armazenado


Há várias coisas que você precisa resolver para fazê-lo funcionar
  1. O nome está errado, não é @ouput seu @code
  2. Você precisa definir a direção do parâmetro para Saída.
  3. Não use AddWithValue já que não deveria ter um valor apenas você Add .
  4. Use ExecuteNonQuery se você não estiver retornando linhas

Tentar
SqlParameter output = new SqlParameter("@code", SqlDbType.Int);
output.Direction = ParameterDirection.Output;
cmd.Parameters.Add(output);
cmd.ExecuteNonQuery();
MessageBox.Show(output.Value.ToString());