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

ORA-00900:kesalahan pernyataan SQL tidak valid? Apa yang salah dengan sql saya?

Klien DB Solo Anda tampaknya menafsirkan titik koma pertama yang dilihatnya sebagai akhir dari pernyataan, yang masuk akal untuk SQL biasa (DML atau DDL) tetapi tidak untuk PL/SQL.

Anda dapat melihatnya dari gambar log yang Anda posting; ia memperlakukan create function ... v_ids integer bagian sebagai satu pernyataan karena itu diakhiri dengan titik koma pertama - itu dikompilasi tetapi dengan kesalahan. Kemudian dibutuhkan potongan berikutnya, hingga titik koma berikutnya, sebagai pernyataan terpisah - v_str varchar2(5000) - dan itu yang mendapatkan ORA-00900, karena itu bukan SQL yang valid.

Menurut dokumentasi :

Jadi berdasarkan itu sepertinya tidak mengerti bagaimana memperlakukan PL/SQL secara berbeda; tetapi Anda dapat mengubah pengaturan Anda untuk tidak memperlakukan titik koma sebagai pemisah pernyataan - secara keseluruhan, yang berarti Anda harus menambahkan GO setelah create type dan create function pernyataan, dan pertanyaan atau panggilan lain yang Anda buat. Ini akan mirip dengan menggunakan / di mana saja di SQL*Plus atau SQL Developer.

Mungkin lebih mudah menggunakan editor prosedur . Agaknya setelah Anda membuat jenis dan fungsi dari browser objek .

Atau, tentu saja, gunakan klien lain...




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL:Cari daftar kolom dengan nilai tertentu (dalam satu baris)

  2. cara mendapatkan hasil ini menggunakan kueri Oracle dalam struktur hierarki

  3. Oracle systimestamp (sysdate) ke milidetik

  4. Bagaimana cara mengekstrak grup dari ekspresi reguler di Oracle?

  5. Batasan ODBC NetSuite