Hallo Leute!
Ich hab da mal eine Frage. Bin eigentlich in der Welt des PL/SQL daheim, hab aber jetzt eine Aufgabe bekommen für MS SQL etwas zu programmieren. Hier ist ja die angewandte Sprache T-SQL. Da das T-SQL dem PL/SQL zwar ähnlich ist, aber doch seine Unterschiede aufweist, stehe ich vor folgendem Problem:
Ich möchte ein Error-Handling machen, dass im Fehlerfall die Prozedur beendet und ein Log-File mit dem Fehler schreibt.
Hierzu benötige ich aber Hilfe.
-
wie ist es bei MS SQL (T-SQL) möglich, ein File mit gewissen Inhalten zu schreiben (Errorhandling)
-
wie kann ich dann das Package kontrolliert zum Absturz bringen, sodass darüberliegende Prozeduren wissen, dass diese Prozedur fehlerhaft beendet wurde (im PL/SQL wäre das ein RAISE_APPLICATION_ERROR)
Kann mir hier vielleicht wer weiterhelfen???
zur Verdeutlichung mein CATCH-Zweig, den ich gerne in ein File abgespeichert hätte
BEGIN CATCH
– Fehlerhandling
SELECT
ERROR_NUMBER() AS ErrorNumber,
ERROR_SEVERITY() AS ErrorSeverity,
ERROR_STATE() as ErrorState,
ERROR_PROCEDURE() as ErrorProcedure,
ERROR_LINE() as ErrorLine,
ERROR_MESSAGE() as ErrorMessage;
–
– Im Fehlerfall soll alles Rückgängig gemacht werden
IF @@TRANCOUNT > 0
ROLLBACK TRANSACTION Replikation;
END CATCH