Używając SQLcl do uruchamiania zapytań w bazie danych Oracle, możesz określić dane wyjściowe wyników zapytania, korzystając z następujących dwóch opcji:
SET SQLFORMAT
polecenie- Dodaj skrót komentarza do zapytania
SET SQLFORMAT
Polecenie
SET SQLFORMAT
Polecenie pozwala ustawić formatowanie wyników zapytania dla wszystkich kolejnych zapytań w bieżącej sesji.
Aby skorzystać z tej opcji, po prostu wykonaj SET SQLFORMAT
z wybraną opcją formatowania.
Następnie kolejne zapytania będą wyprowadzane w tym formacie.
Przykład:
SET SQLFORMAT ansiconsole;
SELECT * FROM regions;
Wynik:
REGION_ID REGION_NAME ____________ _________________________ 1 Europe 2 Americas 3 Asia 4 Middle East and Africa
Oto dostępne opcje:
SET SQLFORMAT default;
SET SQLFORMAT ansiconsole;
SET SQLFORMAT fixed;
SET SQLFORMAT csv;
SET SQLFORMAT loader;
SET SQLFORMAT delimited;
SET SQLFORMAT insert;
SET SQLFORMAT json;
SET SQLFORMAT json-formatted;
SET SQLFORMAT xml;
SET SQLFORMAT html;
SET SQLFORMAT text; (undocumented)
Możesz także uruchomić następujące polecenie, aby uzyskać listę tych opcji wraz z wyjaśnieniem każdej z nich:
HELP SET SQLFORMAT;
Zwróć uwagę, że text
opcja nie jest udokumentowana w pomocy.
Dodaj skrót do komentarza do zapytania
Druga opcja pozwala ustawić format z poziomu zapytania. Aby to zrobić, dodaj komentarz w żądanym formacie zaraz po SELECT
słowo kluczowe.
Przykład:
SELECT /*csv*/ * FROM regions;
Wynik:
"REGION_ID","REGION_NAME" 1,"Europe" 2,"Americas" 3,"Asia" 4,"Middle East and Africa"
Ta opcja może być użyta do ustawienia formatu na dowolny z wymienionych powyżej formatów, z wyjątkiem default
opcja.
Dlatego możemy użyć następujących instrukcji, aby określić różne opcje formatowania dla naszego zapytania:
SELECT /*ansiconsole*/ * FROM regions;
SELECT /*fixed*/ * FROM regions;
SELECT /*csv*/ * FROM regions;
SELECT /*loader*/ * FROM regions;
SELECT /*delimited*/ * FROM regions;
SELECT /*insert*/ * FROM regions;
SELECT /*json*/ * FROM regions;
SELECT /*json-formatted*/ * FROM regions;
SELECT /*xml*/ * FROM regions;
SELECT /*html*/ * FROM regions;
SELECT /*text*/ * FROM regions;