Veröffentlicht 13. März 2015
Aktualisiert Oktober 2025
Der SQL-Abfragegenerator
Das Erstellen von SQL-Anweisungen gehört zu den häufigsten Aufgaben, denen sich Oracle-Entwickler stellen müssen.
In diesem Beitrag zeigen wir mehrere Möglichkeiten, wie KeepTool Ihnen hilft, diese Arbeit deutlich effizienter zu erledigen.
Wenn Sie mehrere Tabellen verknüpfen möchten, können Sie den Query Builder von KeepTool verwenden, der in jedem Editorfenster über das Baustellen/Kran-Symbol erreichbar ist.

Hora’s visueller SQL-Abfrage-Generator
Zum Beispiel: Doppelklicken Sie auf die Tabelle LOCATIONS in der linken Navigationsleiste, um sie in den Designer auf der rechten Seite zu übernehmen.
Klicken Sie dann mit der rechten Maustaste in den Designer und wählen Sie eine dazugehörige Detailtabelle, z. B. DEPARTMENTS.
Der Query Builder verknüpft sie automatisch mit einem RIGHT OUTER JOIN, da der Fremdschlüssel LOCATION_ID in DEPARTMENTS den Wert NULL annehmen kann.
Aktivieren Sie die Kontrollkästchen neben den Spaltennamen, um auszuwählen, welche Spalten angezeigt werden sollen, und setzen Sie unten das Häkchen bei “ANSI Joins”.
Nach dem Schließen des Dialogs wird die generierte SQL-Anweisung im Codefenster angezeigt:
SELECT
LOCATIONS.CITY,
LOCATIONS.POSTAL_CODE,
DEPARTMENTS.DEPARTMENT_ID,
DEPARTMENTS.DEPARTMENT_NAME
FROM LOCATIONS
RIGHT OUTER JOIN DEPARTMENTS ON (LOCATIONS.LOCATION_ID = DEPARTMENTS.LOCATION_ID)
SQL in die Zwischenablage kopieren
Oft benötigen Sie eine einfache SQL-Anweisung für eine einzelne Tabelle, ohne alle Spaltennamen manuell eingeben zu müssen.
In diesem Fall öffnen Sie die Seite Overview → Tables und wählen im Kontextmenü den Eintrag “Copy to clipboard…”.

SQL-Codererzeugung, z.B. CURSOR FOR LOOP und Bereitstellung über die Zwischenablage
Diese Funktion bietet verschiedene Arten von SQL-Anweisungen, die Sie für die ausgewählte Tabelle erzeugen können:
-
SELECT-Anweisung
-
INSERT-Anweisung
-
UPDATE-Anweisung
-
MERGE-Anweisung
-
DELETE-Anweisung
-
CURSOR FOR LOOP
-
WHERE-Bedingung
Die letzten beiden Menüeinträge erzeugen Vorlagen für Oracles Export- und Importwerkzeuge expdp und impdp, basierend auf den ausgewählten Tabellen:
expdp system@PORA12C1 tables=DEPARTMENTS,LOCATIONS
directory=DATA_PUMP_DIR dumpfile=pora12c1.dmp reuse_dumpfiles=y logfile=pora12c1.log
Show DDL
Ein weiterer nützlicher Befehl auf der Seite Overview → Tables ist “Show DDL” (DDL anzeigen).

Reverse DDL Code-Erzeugung für Datenbankobjekte
Mit Hilfe der Reverse/DDL-Engine von KeepTool wird die DDL-Anweisung generiert, die zum Erstellen der ausgewählten Tabellen erforderlich ist.
Die Menübefehle “Copy to clipboard” und “Show DDL” finden Sie auch für andere Objekttypen wie Packages, Sequences und Users.
Das Editorfenster
Im Editorfenster stehen Ihnen zusätzliche Funktionen zur SQL-Generierung zur Verfügung.
Öffnen Sie den DB Object Browser (über das Symbol mit dem Fragezeichen in der Symbolleiste), ziehen Sie einen Tabellennamen per Drag & Drop in das Codefenster, doppelklicken Sie auf den Namen, um ihn zu markieren, und klicken Sie dann mit der rechten Maustaste, um das Untermenü “Selected Object” zu öffnen.

Drag and Drop SQL-Erzeugung
Hier können Sie die ausgewählte Tabelle in verschiedene Arten von SQL- oder PL/SQL-Code einfügen, z. B.:
-
SELECT-Anweisung
-
INSERT-Anweisung
-
UPDATE-Anweisung
-
CURSOR FOR LOOP
Beispielsweise erzeugt die Auswahl von CURSOR FOR LOOP folgenden Code:
Für alle diese Befehle stehen auch Tastenkombinationen zur Verfügung. Zum Beispiel können Sie einen Tabellennamen mit Strg + Umschalt + S direkt in eine SELECT-Anweisung erweitern. So können Sie schnell mit einer generierten Vorlage beginnen und diese nach Bedarf anpassen oder erweitern.
So funktioniert’s!
Entdecken Sie, wie KeepTool Sie dabei unterstützt, SQL-Anweisungen schnell und effizient zu generieren.
➡️ KeepTool kostenlos testen
Die Oracle-Tools von KeepTool wurden speziell für Entwickler, DBAs und Support-Teams entwickelt.
Basierend auf über 25 Jahren Erfahrung optimieren wir unsere Software kontinuierlich, um Ihre Datenbankanalyse und -dokumentation schneller, effizienter und übersichtlicher zu gestalten.