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

Mengapa saya mendapatkan ORA-00932:tipe data tidak konsisten:diharapkan - didapat - saat menggunakan COLLECT() dalam pernyataan yang disiapkan?

Akhirnya mendapat solusi untuk masalah ini, berkat beberapa penggalian oleh pengguna. Masalahnya bukan pada placeholder; mengapa itu berhasil tanpa placeholder pada gambar VirtualBox, saya tidak tahu. Tidak, masalahnya ada pada COLLECT() . Tampaknya kedua nilai yang dikumpulkan perlu dilemparkan ke tipe tertentu, dan array yang dihasilkan juga perlu dilemparkan ke tipe data array yang telah ditentukan sebelumnya. Kebetulan kode saya memiliki tipe array khusus:

CREATE TYPE sqitch_array AS varray(1024) OF VARCHAR2(512);

Jadi saya bisa membuat kueri berfungsi dengan mentransmisikan COLLECT() seperti ini:

CAST(COLLECT(CAST(t.tags as VARCHAR2(512))) AS sqitch_array)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara menghilangkan kolom LOB yang kosong tapi besar?

  2. Tambahkan Hari ke Stempel Waktu

  3. verifikasi_queryable_inventory dikembalikan ORA-20008:Waktu habis

  4. Cara Mengatasi ORA-29280:jalur direktori tidak valid

  5. Apakah hak istimewa pada tabel yang mendasarinya secara otomatis diteruskan ke tampilan apa pun yang dibuat di atas tabel?