Jika Anda mencoba menjalankan kueri multi-baris di SQLcl atau SQL*Plus, dan Anda terus mendapatkan kesalahan seperti "Perintah Tidak Dikenal", tetapi menjalankannya di Pengembang SQL tidak menyebabkan kesalahan seperti itu, mungkin posting ini akan membantu.
Secara default, SQLcl dan SQL*Plus tidak mengizinkan baris kosong dalam pernyataan SQL. Namun, Anda dapat mengubahnya dengan SET SQLBLANKLINES perintah.
Sintaks
Sintaksnya seperti ini:
SET SQLBL[ANKLINES] {ON | OFF}
Ini berarti Anda dapat menggunakan SQLBLANKLINES lengkap atau bentuk singkatannya SQLBL , dan Anda dapat menyetelnya ke ON atau OFF .
Ini OFF secara default. Menyetelnya ke ON akan memungkinkan Anda untuk memasukkan baris kosong dalam kode Anda.
Contoh
Pertama, saya akan memeriksa pengaturan saya saat ini:
SHOW SQLBLANKLINES Hasil:
sqlblanklines OFF
Saat ini, dukungan untuk baris kosong dinonaktifkan.
Misalkan kita memiliki pernyataan SQL berikut:
SELECT 3 * 10
FROM DUAL; Inilah yang terjadi jika saya menyalin dan menempelkannya ke SQLcl dan mencoba menjalankannya:
SQL> SELECT 3 * 10 2 3* FROM DUAL; Error starting at line : 1 in command - SELECT 3 * 10 Error at Command Line : 1 Column : 13 Error report - SQL Error: ORA-00923: FROM keyword not found where expected 00923. 00000 - "FROM keyword not found where expected" *Cause: *Action: Error starting at line : 1 in command - FROM DUAL Error report - Unknown Command
Pernyataan gagal, karena baris kosong.
Setel SQLBLANKLINES ke ON
Sekarang mari kita atur SQLBLANKLINES ke ON :
SET SQLBLANKLINES ON Dan jalankan kueri lagi:
SELECT 3 * 10
FROM DUAL; Sekarang inilah yang saya dapatkan:
SQL> SELECT 3 * 10
2
3* FROM DUAL;
3*10
_______
30 Kali ini pernyataan berhasil.
Formulir Singkat
Sebagai alternatif, Anda dapat menggunakan bentuk singkatan SQLBL .
Contoh mengembalikan pengaturan saat ini:
SHOW SQLBL Hasil:
sqlblanklines ON
Contoh mematikannya, dan menampilkannya lagi:
SET SQLBL OFF
SHOW SQLBL Hasil:
sqlblanklines OFF