Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Speichern der Raiserror-Meldung von SqlServer in C#

Es hängt von der Schwere Ihres RAISERROR ab. Die Schweregrade 1–10 gelten als Informationsmeldungen und unterbrechen den Fluss Ihres C#-Clients nicht, d. h. Sie werfen keine Ausnahme. Diese Informationsmeldungen lösen das InfoMessage-Ereignis auf Ihrer Verbindung aus.

Wenn Sie RAISERROR mit einem Schweregrad zwischen 10 und 16 eingeben, wird dies als Fehler betrachtet und Ihr SqlCommand.Execute wird eine Ausnahme auslösen, die Sie abfangen können.

Mit Schweregraden über 17 können Sie nicht spielen, sie werden nur von der Engine verwendet, um schwerwiegende Probleme anzuzeigen, die die Datenbank offline schalten oder die Instanz herunterfahren können. Es ist technisch nicht möglich, Fehler mit einem Schweregrad über 25 zu melden, Ihr Beispiel mit einem Schweregrad von 100 ist nur Dummheit.