Utilizzo SQL Server 2005. Ho creato una stored procedure che funziona la maggior parte del tempo, ma ho trovato un'istanza in cui non fa ciò che voglio.Come ottenere l'errore sql nella stored procedure
Attualmente, il codice fa qualcosa di simile
if @@error <> 0
begin
select @message_error = "There was a database error adding product "+ @product + " to product line
end
Dove @message_error
è una variabile di uscita.
Quindi, posso select @@error
e ottenere un numero, ma tutto quello che voglio veramente è l'errore SQL.
Qualcosa come Ehi, non potrei farlo perché c'è un limite fk su questa colonna o qualsiasi altra cosa. Ho trovato questo articolo su MSDN http://msdn.microsoft.com/en-us/library/ms178592(v=sql.90).aspx
ma va solo su gettando eccezioni personalizzate con RAISERROR
, io non voglio creare il mio messaggio di errore o eccezione, voglio solo sapere perché roba non sta funzionando. Posso eseguire la stored procedure attraverso Management Studio e vedere l'errore SQL esatto, ma è noioso cercare di abbinare i dati dal sito e inserirli manualmente in quel modo.
Come si ottiene il testo dell'errore SQL in una variabile di uscita?
Hai guardato su ERROR_MESSAGE http://msdn.microsoft.com/en-us/library/ms190358.aspx? – Romhein