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

Làm thế nào để ánh xạ Postgres _INT8 với thực thể Java bằng Hibernate?

_int8 là bí danh nội bộ cho loại int8[] , tức là một mảng các số nguyên dài.

Tôi không biết tại sao tiền tố gạch dưới được sử dụng, nó thật kinh khủng, nhưng nó thực sự chỉ nên hiển thị bên trong máy chủ nên tôi ngạc nhiên khi bạn thấy nó xuất hiện trong tin nhắn. Lấy ví dụ như trường hợp này máy chủ hiển thị bigint[] như loại cột trong thông báo:

http://sqlfiddle.com/#!12/61bc5/1

Nếu bạn muốn ánh xạ nó ở chế độ Hibernate, bạn phải ánh xạ nó dưới dạng long[] , nếu Hibernate thậm chí còn hỗ trợ mảng SQL - mà nó không xuất hiện . Có thể bạn sẽ phải thêm triển khai UserType của riêng bạn sử dụng hỗ trợ JDBC cho mảng SQL . Một ví dụ khác trên diễn đàn Hibernate . Nó có vẻ là một câu hỏi thường gặp , nhưng giống như hầu hết mọi thứ trong Hibernate / JPA, bạn sẽ thấy rằng ngay khi bạn cố gắng sử dụng bất kỳ thứ gì ngoại trừ các tính năng cơ sở dữ liệu cơ bản nhất, bạn sẽ đập đầu vào tường gạch.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chọn cho đến khi hàng khớp trong postgresql?

  2. Buộc cài đặt Postgres bằng mã hóa UTF8, không phải LATIN1?

  3. PostgreSQL - Viết sql động trong thủ tục được lưu trữ trả về tập kết quả

  4. Có thể lưu trữ dấu phẩy thay vì điểm cho các trường thập phân trong cơ sở dữ liệu PostgreSQL không?

  5. Truy vấn gốc toán tử JPA và JSON