Wprowadzając instrukcję SQL do SQL * Plus, musi ona wiedzieć, kiedy to zrobisz, zwłaszcza jeśli polecenie obejmuje wiele wierszy. Dlatego wymaga znaku końcowego, który można ustawić za pomocą set sqlterminator
. Domyślnie tym znakiem jest średnik:
SQL> select *
2 from
3 dual;
D
-
X
Teraz zmień ten znak terminala na #
:
SQL> set sqlterminator #
SQL> select *
2 from
3 dual#
D
-
X
Instrukcja SQL została zakończona (zakończona) za pomocą #
.
Pytasz: dlaczego set sqlterminator #
nie było średnika? Odpowiedź, ponieważ nie jest to instrukcja SQL. Instrukcje odnoszące się do SQL * Plus i jego zachowania, wyniku, połączenia asf (takie jak set echo on
i connect system/manager
) nie są instrukcjami SQL i dlatego są wprowadzane bez średnika.
Co to ma wspólnego z /
?
Po wprowadzeniu instrukcji SQL SQL * plus wypełnił coś, co nazywa się buforem. Ten bufor można wyświetlić za pomocą list
polecenia:
SQL> list
1 select *
2 from
3* dual
SQL>
(Uwaga: wpisałem tylko listę , reszta jest zwracana)
/
Teraz wykonuje to, co jest obecnie w buforze. Spróbujmy:
SQL> /
D
-
X
Jak widać, wykonywane jest to samo zapytanie.