Wenn Sie eine Abfrage für eine Oracle-Datenbank mit SQLcl oder SQL*Plus ausführen, werden die Ergebnisse gemäß dem SQLFORMAT
angezeigt Möglichkeit. Aber innerhalb dessen gibt es noch andere Dinge, die Sie tun können, um das Format der Ergebnisse anzupassen.
Sie können unter anderem ein Spaltentrennzeichen für das Ausgaberaster angeben.
Auf diese Weise können Sie Ihr Ausgaberaster so einstellen, dass es eher wie ein Raster – oder eine Tabelle – aussieht, wobei die Spalten mit einer Art vertikaler Umrandung klarer definiert sind.
Das standardmäßige Spaltentrennzeichen ist ein einzelnes Leerzeichen. Unten zeige ich Ihnen, wie Sie das Spaltentrennzeichen in ein sichtbareres Trennzeichen ändern.
Das Standardtrennzeichen
Lassen Sie uns zuerst das SQLFORMAT
festlegen auf DEFAULT
:
SET SQLFORMAT DEFAULT;
Das löscht alle vorherigen SQLFORMAT
Einstellungen und kehrt zur Standardausgabe zurück.
Sehen wir uns nun an, wie das standardmäßige Spaltentrennzeichen aussieht:
SELECT
employee_id,
first_name,
last_name,
job_id
FROM EMPLOYEES
ORDER BY employee_id ASC
FETCH FIRST 5 ROWS ONLY;
Ergebnis:
EMPLOYEE_ID FIRST_NAME LAST_NAME JOB_ID ----------- -------------------- ------------------------- ---------- 100 Steven King AD_PRES 101 Neena Kochhar AD_VP 102 Lex De Haan AD_VP 103 Alexander Hunold IT_PROG 104 Bruce Ernst IT_PROG
Wie bereits erwähnt, ist das standardmäßige Spaltentrennzeichen ein einzelnes Leerzeichen.
Lass es uns ändern.
Legen Sie das Spaltentrennzeichen fest
Setzen wir das Spaltentrennzeichen auf das Pipe-Symbol (|
):
SET COLSEP '|'
Und jetzt lassen Sie uns die Abfrage erneut ausführen:
SELECT
employee_id,
first_name,
last_name,
job_id
FROM EMPLOYEES
ORDER BY employee_id ASC
FETCH FIRST 5 ROWS ONLY;
Ergebnis:
EMPLOYEE_ID|FIRST_NAME |LAST_NAME |JOB_ID -----------|--------------------|-------------------------|---------- 100|Steven |King |AD_PRES 101|Neena |Kochhar |AD_VP 102|Lex |De Haan |AD_VP 103|Alexander |Hunold |IT_PROG 104|Bruce |Ernst |IT_PROG
Jetzt wird das Pipe-Symbol wie eine vertikale Umrandung der Spalten angezeigt.
Auf Wunsch können wir um diese Grenzen herum zusätzlichen Platz hinzufügen:
SET COLSEP ' | '
Und jetzt lassen Sie uns die Abfrage erneut ausführen:
SELECT
employee_id,
first_name,
last_name,
job_id
FROM EMPLOYEES
ORDER BY employee_id ASC
FETCH FIRST 5 ROWS ONLY;
Ergebnis:
EMPLOYEE_ID | FIRST_NAME | LAST_NAME | JOB_ID ----------- | -------------------- | ------------------------- | ---------- 100 | Steven | King | AD_PRES 101 | Neena | Kochhar | AD_VP 102 | Lex | De Haan | AD_VP 103 | Alexander | Hunold | IT_PROG 104 | Bruce | Ernst | IT_PROG