Benutzer mit den meisten Antworten
Fehlermeldungen aus der Messagebox in Tabelle übergeben

Frage
-
Hallo,
ich möchte gern die Fehlermeldungen die ich in der Messagebox angezeigt bekomme wenn ich eine Stored Prozedure "per Hand" ausführe in eine Tabelle auf meinem SQL Server übergeben. Ich finde leider kein passendes Ergebnis bei meiner Internetsuche.
Kann mir jemand einen Hinweis geben bitte.
Vielen Dank im Voraus
Gruß Lukas
Antworten
-
Schau dir mal die Try-Catch-Anweisungen an:
https://msdn.microsoft.com/de-de/library/ms175976%28v=sql.120%29.aspx
Damit kannst du die Prozeduren umschließen und diverse Fehlerwerte (ERROR_NUMBER, ERROR_MESSAGE usw., siehe Link) innerhalb vom Catch verarbeiten und z.B. in eine Tabelle einfügen.
- Bearbeitet André Pönisch Mittwoch, 24. Februar 2016 20:56
- Als Antwort vorgeschlagen Olaf HelperMVP Donnerstag, 25. Februar 2016 11:39
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Montag, 14. März 2016 10:04
Alle Antworten
-
Hallo Lukas,
welche MessageBox? Welche Anwendung?
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
Schau dir mal die Try-Catch-Anweisungen an:
https://msdn.microsoft.com/de-de/library/ms175976%28v=sql.120%29.aspx
Damit kannst du die Prozeduren umschließen und diverse Fehlerwerte (ERROR_NUMBER, ERROR_MESSAGE usw., siehe Link) innerhalb vom Catch verarbeiten und z.B. in eine Tabelle einfügen.
- Bearbeitet André Pönisch Mittwoch, 24. Februar 2016 20:56
- Als Antwort vorgeschlagen Olaf HelperMVP Donnerstag, 25. Februar 2016 11:39
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Montag, 14. März 2016 10:04
-
Vielen Dank, das war ein guter Hinweis!
Mit dieser Anweisung bekomme ich meine evtl. Fehlermeldungen in Access zu sehen
BEGIN TRY
EXEC fill_tables
END TRYBEGIN CATCH
INSERT INTO table
SELECT (convert(NVARCHAR(50), getdate(), 104)) AS [DATE]
,(convert(NVARCHAR(50), getdate(), 108)) AS [TIME]
,ERROR_NUMBER() AS [Number]
,ERROR_SEVERITY() AS [Severity]
,ERROR_STATE() AS [State]
,ERROR_PROCEDURE() AS [Procedure]
,ERROR_LINE() AS [Line]
,ERROR_MESSAGE() AS [Message];
END CATCH