PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak zmapować Postgres _INT8 na encję Java za pomocą Hibernate?

_int8 jest wewnętrznym aliasem dla typu int8[] , czyli tablica długich liczb całkowitych.

Nie mam pojęcia, dlaczego używany jest przedrostek podkreślenia, jest okropny, ale powinien być widoczny tylko wewnątrz serwera, więc jestem zaskoczony, że widzisz go w wiadomościach. Weźmy to na przykład, gdy serwer pokazuje bigint[] jako typ kolumny w wiadomościach:

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

Jeśli chcesz zmapować go w Hibernate, musisz go zmapować jako long[] , jeśli Hibernate obsługuje nawet tablice SQL — których nie wydaje się . Prawdopodobnie będziesz musiał dodać własną implementację UserType, która korzysta z obsługi JDBC dla tablic SQL . Kolejny przykład na forach Hibernate . To wydaje się być trochę często zadawanym pytaniem , ale jak większość rzeczy w Hibernate/JPA zauważysz, że gdy tylko spróbujesz użyć czegokolwiek poza najbardziej podstawowymi funkcjami bazy danych, będziesz walił głową o ceglany mur.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. HQL — Sprawdź, czy tablica zawiera wartość

  2. IN kontra DOWOLNY operator w PostgreSQL

  3. Jak odzyskać dane z usuniętego kontenera Dockera? Jak ponownie połączyć go z danymi?

  4. Railsy nie konwertują strefy czasowej (PostgreSQL)

  5. Jak ZMIENIĆ tabelę PostgreSQL i uczynić kolumnę unikalną?