Wenn Sie eine SQL-Anweisung in SQL * Plus eingeben, müssen Sie wissen, wann Sie damit fertig sind, insbesondere wenn der Befehl mehrere Zeilen umfasst. Daher ist ein Terminalzeichen erforderlich , das mit der Taste eingestellt werden kann set sqlterminator. Dieses Zeichen ist standardmäßig das Semikolon:
SQL> select *
2 from
3 dual;
D
-
X
Ändern Sie nun dieses Terminal-Zeichen in ein #:
SQL> set sqlterminator #
SQL> select *
2 from
3 dual#
D
-
X
Die SQL-Anweisung wurde mit einem beendet (Ende ausgeführt) #.
Sie fragen: Warum wurde set sqlterminator #kein Semikolon gefolgt? Antwort: Dies ist keine SQL-Anweisung. Anweisungen, die sich auf SQL * Plus und dessen Verhalten, Ausgabe, Verbindung asf (wie set echo onund connect system/manager) beziehen, sind keine SQL-Anweisungen und werden daher ohne Semikolon eingegeben.
Was hat das mit dem zu tun /?
Wenn Sie eine SQL-Anweisung eingegeben haben, hat SQL * plus etwas gefüllt, was es als Puffer bezeichnet. Dieser Puffer kann mit dem listBefehl angezeigt werden :
SQL> list
1 select *
2 from
3* dual
SQL>
(Hinweis: Ich habe nur die Liste eingegeben , der Rest wird zurückgegeben.)
Der /führt nun aus, was sich aktuell im Puffer befindet. Versuchen wir das mal:
SQL> /
D
-
X
Wie zu sehen ist, wird dieselbe Abfrage ausgeführt.