Khi bạn nhập câu lệnh SQL vào SQL * Plus, bạn cần biết khi nào bạn hoàn thành nó, đặc biệt là nếu lệnh kéo dài nhiều hàng. Do đó, nó đòi hỏi một ký tự đầu cuối có thể được đặt với set sqlterminator
. Theo mặc định, ký tự này là dấu chấm phẩy:
SQL> select *
2 from
3 dual;
D
-
X
Bây giờ, thay đổi ký tự đầu cuối này thành #
:
SQL> set sqlterminator #
SQL> select *
2 from
3 dual#
D
-
X
Câu lệnh SQL đã kết thúc (kết thúc thực hiện) với a #
.
Bạn hỏi: tại sao set sqlterminator #
không có dấu chấm phẩy? Trả lời, bởi vì đây không phải là một câu lệnh SQL. Các câu lệnh liên quan đến SQL * Plus và hành vi, đầu ra, kết nối asf (như set echo on
và connect system/manager
) của nó không phải là các câu lệnh SQL và được nhập vào mà không có dấu chấm phẩy.
Điều này có liên quan gì đến /
?
Khi bạn đã nhập một câu lệnh SQL, SQL * plus đã điền vào một cái gì đó mà nó gọi là bộ đệm. Bộ đệm này có thể được hiển thị với list
lệnh:
SQL> list
1 select *
2 from
3* dual
SQL>
(Lưu ý: Tôi chỉ nhập danh sách , phần còn lại được trả về)
Các /
giờ thực hiện những gì hiện đang trong bộ đệm. Hãy thử rằng:
SQL> /
D
-
X
Như có thể thấy, cùng một truy vấn được thực hiện.