PL/SQL-Formatierer
Formatiere Oracle SQL und PL/SQL mit Oracle-Regeln für alternatives Quoting mit q'[...]', N''-Zeichenfolgen, Bezeichner in doppelten Anführungszeichen, :Bind-Variablen und den Schrägstrich, der einen Block in SQL*Plus ausführt. CONNECT BY, START WITH, RETURNING und MINUS bleiben Klauseln, und BEGIN- und END-Blöcke mit IF und LOOP werden eingerückt. Nicht geschlossene Zeichenfolgen und Klammern werden mit Zeile und Spalte gemeldet – für Oracle-Entwickler.
Häufig gestellte Fragen
Welche Oracle-Syntax wird erkannt?
Zeichenfolgen in einfachen Anführungszeichen mit verdoppelten Anführungszeichen, alternatives Quoting wie q'[it's]' oder q'{...}' und N''-Nationalzeichenfolgen werden erkannt. Bezeichner in doppelten Anführungszeichen, Namen mit # und $ wie emp#, :Bind-Variablen und :=-Zuweisungen bleiben unverändert.
Kann das Tool PL/SQL-Blöcke formatieren?
Ja. BEGIN- und END-Abschnitte, IF THEN ELSE END IF, CASE- und LOOP-Konstrukte werden eingerückt, und jede Anweisung steht in einer eigenen Zeile. Deklarationen vor BEGIN bleiben jeweils eigene Anweisungen.
Was passiert mit der Schrägstrichzeile?
Eine Zeile, die nur / enthält und den vorherigen Block in SQL*Plus und SQLcl ausführt, bleibt in einer eigenen Zeile. Sie trennt die Blöcke davor und danach.
Welche Oracle-Klauseln erhalten eine eigene Zeile?
Bei hierarchischen Abfragen bleiben CONNECT BY und START WITH eigene Klauseln. RETURNING und der MINUS-Mengenoperator werden wie die Standardklauseln SELECT, FROM, WHERE, GROUP BY und ORDER BY behandelt.
Wird MERGE unterstützt?
Ja. Die Zweige WHEN MATCHED THEN und WHEN NOT MATCHED THEN beginnen jeweils in einer neuen Zeile, damit Oracle-MERGE-Anweisungen gut lesbar bleiben.
Bleiben Kommentare erhalten?
Ja. ---Zeilenkommentare und /* Blockkommentare */ bleiben an ihrer Stelle. Optimiererhinweise wie /*+ INDEX(e) */ bleiben exakt wie geschrieben.
Ändert das die Groß- und Kleinschreibung von Schlüsselwörtern?
Nein. Schlüsselwörter und Bezeichner behalten die von dir verwendete Groß- und Kleinschreibung. Nicht in Anführungszeichen gesetzte Oracle-Namen unterscheiden nicht zwischen Groß- und Kleinschreibung, Namen in Anführungszeichen schon; beide bleiben unverändert.
Welche Fehler werden erkannt?
Nicht geschlossene Zeichenfolgen, alternative Anführungszeichen, Bezeichner in Anführungszeichen und Blockkommentare sowie unausgeglichene Klammern werden jeweils mit Zeile und Spalte gemeldet. Pakete und Grammatik werden nicht kompiliert.
Wie groß darf die Eingabe sein?
Bis zu 1 MB pro Anfrage und 128 KB pro Anweisung oder Block. Größere Pakete können in Teilen formatiert werden.
Kann ich die Einrückung auswählen, und wird mein Code gespeichert?
Verwende 2 oder 4 Leerzeichen oder Tabulatoren. Der Code wird nur im Arbeitsspeicher formatiert und nie gespeichert.