Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Làm thế nào để trả về cá thể CLOB tạm thời từ hàm được lưu trữ trong Pl / SQL?

Trong một bình luận, bạn đã nói:

Tài liệu về getSubString nói rằng:

Với một chức năng đơn giản để tạo và trả về CLOB, tôi có thể truy xuất nó qua JDBC (ojdbc5 hoặc ojdbc6 ) không có vấn đề gì, với getCLOB() hoặc getString() . Nhưng nếu tôi cố gắng gán Oracle.sql.CLOB được truy xuất bằng getCLOB thành một String sử dụng

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

thì tôi cũng nhận được Invalid argument(s) in call lỗi. Chỉ cần thay đổi điều đó thành:

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

làm. Vì vậy, nó dường như không liên quan gì đến phân bổ tạm thời trong hàm, hoặc kích thước CLOB. Tôi không hiểu tại sao bạn lại không gặp vấn đề với các CLOB nhỏ hơn - có lẽ logic của bạn không thành vấn đề nếu chúng nhỏ?

Trong thời gian chờ đợi, bạn đã giải quyết vấn đề này với clob.getCharacterStream().read() , vì vậy điều này có thể hơi không liên quan ngay bây giờ.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. tiên tri di chuyển sang chuỗi byte không hợp lệ postgresql để mã hóa UTF8:0x00

  2. Không thể chạy IntelliJ IDEA CE 12 với Ubuntu Oracle Java 8

  3. Java JDBC - Cách kết nối với Oracle bằng tnsnames.ora

  4. Lỗi:ORA-00955:tên đã được sử dụng bởi một đối tượng hiện có trong Hàm Oracle

  5. 2 Hàm trả về tháng từ một ngày trong Oracle