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

Bagaimana cara mengembalikan instance CLOB sementara dari fungsi tersimpan di Pl/SQL?

Dalam komentar Anda mengatakan:

Dokumentasi getSubString menyatakan bahwa:

Dengan fungsi sederhana untuk menghasilkan dan mengembalikan CLOB, saya dapat mengambilnya melalui JDBC (ojdbc5 atau ojdbc6 ) tanpa masalah, baik dengan getCLOB() atau getString() . Tetapi jika saya mencoba menetapkan Oracle.sql.CLOB diambil dengan getCLOB ke String menggunakan

String x = getSubString(0, clob.length());

lalu saya juga mendapatkan Invalid argument(s) in call kesalahan. Ubah saja menjadi:

String x = getSubString(1, clob.length());

bekerja. Jadi sepertinya tidak ada hubungannya dengan alokasi sementara dalam fungsi, atau ukuran CLOB. Saya tidak mengerti mengapa Anda tidak memiliki masalah dengan CLOB yang lebih kecil - mungkin logika Anda tidak tepat jika ukurannya kecil?

Sementara itu Anda telah mengatasinya dengan clob.getCharacterStream().read() , jadi ini mungkin agak tidak relevan sekarang.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pengembang SQL memperbaiki tampilan koneksi

  2. bagaimana cara mendapatkan PL/SQL di SQLFiddle?

  3. Kesalahan percikan - Presisi desimal 39 melebihi presisi maks 38

  4. Pemicu untuk menampilkan pesan menggunakan PL/SQL

  5. Oracle:'=ANY()' vs. 'IN ()'