Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

mengeksekusi `EXECUTE IMMEDIATE` Pernyataan Oracle Mendapatkan Kesalahan

Masalahnya adalah ; karakter dalam 'SELECT * FROM DUAL;' .

Dari dokumentasi :

execute_immediate_statement ::=
EXECUTE_IMMEDIATE dynamic_string
 { 
    INTO { define_variable [, define_variable ...] | record_name } 
  | BULK COLLECT INTO { collection_name [, collection_name ...] | :host_array_name } 
 }
   [ USING [ IN | OUT | IN OUT ] bind_argument
   [, [ IN | OUT | IN OUT ] bind_argument] ... ] [ returning_clause ] ;

... di mana dynamic_string adalah (penekanan pada saya):

Karena tidak akan menerima banyak pernyataan kecuali Anda menyertakannya dalam satu blok PL/SQL, ; pemisah tidak diharapkan.

Ada penjelasan yang lebih baik di Menggunakan Pernyataan EXECUTE IMMEDIATE di PL/SQL :



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apakah kinerja akan berdampak ketika prosedur database dipanggil dari aplikasi berkali-kali?

  2. Apa yang harus saya hindari saat mengirim kueri?

  3. cara mengubah tanggal ke waktu di oracle 10g

  4. Pengecualian ODP.Net Driver Throwing pada .NET Core 5.0

  5. Oracle menggandakan baris N kali di mana N adalah kolom