Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Pragma DEBUG ROUTINE

Das Pragma DEBUG ROUTINE stellt zusätzliche Informationen zu einem möglicherweise fehlerhaften Ablauf einer Routine zur Verfügung. Diese Informationen können über den View SYS_ROUTINE_ERRORS des SYS_INFO_SCHEMA gelesen werden, siehe "SYS_ROUTINE_ERRORS".

Das Pragma DEBUG ROUTINE wirkt nur außerhalb von Routinen. Es wirkt vor der SQL-Anweisung CALL und vor den DML-Anweisungen DECLARE CURSOR, DELETE, INSERT, MERGE, SELECT und UPDATE. Bei Angabe vor DML-Anweisungen wirkt das Pragma auf alle User Defined Functions (UDF) und die darin enthaltenen Routinen der DML-Anweisung.

Das Pragma wurde in SESAM/SQL V9.0 umbenannt. Auch die Angabe von DEBUG PROCEDURE ist aus Kompatibilitätsgründen noch möglich.



DEBUG ROUTINE [ALL | USER] [LEVEL vorzeichenlose_ganzzahl ]



vorzeichenlose_ganzzahl

Bei vorzeichenlose_ganzzahl > 0 werden für die durchgeführten SQL-Anweisungen der aktuellen Routine zusätzliche Informationen gesammelt.

vorzeichenlose_ganzzahl = 1 ist der Standardwert, wenn die Klausel LEVEL nicht angegeben wird.

Bei vorzeichenlose_ganzzahl = 0 wird das Pragma ignoriert.

Folgende Vorgehensweise bietet sich an:

Das Pragma ist zunächst zu Testzwecken mit einem Wert > 0 in einer Anwendung aktiv und wird dann später (ohne Änderung der Textlänge) durch den Wert 0 deaktiviert.


USER

Abhängig vom eingestellten LEVEL werden Informationen für die SQL-Anweisungen gesammelt, denen das Pragma DEBUG VALUE (siehe "Pragma DEBUG VALUE") vorangestellt ist.


ALL

Neben den bei USER erwähnten DEBUG-Informationen werden (unabhängig vom eingestellten LEVEL) auch allgemeine DEBUG-Informationen erstellt.
Beispielsweise wird jeder von einer fehlerhaften SQL-Anweisung gemeldete SQLSTATE oder SQLrowcount aufgezeichnet. Interne Aufrufe von Routinen werden ebenfalls aufgezeichnet. Auch die Position einer SQL-Anweisung innerhalb des Textes einer Routine wird normalerweise aufgezeichnet.