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

Chuyển đổi đối tượng thành CLOB

Nếu độ dài của CLOB đủ nhỏ (<Integer.MAX_VALUE ) bạn có thể làm như sau:

clob.getSubString(1, (int) clob.length());

(Chỉ cần xem qua câu hỏi này )

CHỈNH SỬA:

Mã bạn đã gửi trong câu hỏi của mình sẽ trở thành:

String sql = "select id, data from mytable";
List< Object[] > results = getEntityManager().createNativeQuery(sql).getResultList();
Map< Long, String > map = new HashMap<>();
Clob clob = (Clob)result[1];
String value = clob.getSubString(1, (int) clob.length());
map.put(((Number) result[0]).longValue(), value);

Xin lưu ý rằng vòng lặp trong mã ban đầu của bạn hoàn toàn vô dụng nên tôi đã xóa nó.

Đồng thời kiểm tra result[1] là một java.sql.Clob



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tạo một ngày ngẫu nhiên trong Oracle với DBMS_RANDOM

  2. bảng xml to oracle DB:gặp sự cố

  3. Cách khắc phục Nhà cung cấp không tương thích với phiên bản máy khách Oracle?

  4. Filehelpers Excel sang Oracle db

  5. Bảng ALTER &DROP DDL với việc thực thi ngay lập tức trong cơ sở dữ liệu Oracle