Saat Anda execute immediate
, perintah yang Anda jalankan tidak boleh memiliki titik koma di bagian akhir; itu adalah pemisah perintah di Pengembang SQL (dan SQL *Ditambah
, dan klien lain), bukan bagian dari pernyataan SQL itu sendiri.
SELECT 'CREATE SEQUENCE ID_SEQ MINVALUE 1 MAXVALUE 9999999999 START WITH '
|| (max(ID)+1) || ' INCREMENT BY 1 CACHE 20' INTO y FROM TEST_TABLE;
Ini ditunjukkan dalam contoh untuk SQL biasa . Hanya untuk membantu membingungkan Anda, jika Anda menggunakan PL/SQL dalam SQL dinamis, Anda masih memerlukan titik koma yang sesuai untuk PL/SQL itu sendiri - meskipun bukan /
yang mengeksekusi Anda akan gunakan untuk menjalankannya langsung dari klien. Ini ditunjukkan dalam contoh lain
.