sql >> Database teknologi >  >> RDS >> PostgreSQL

Hvordan tilknyttes Postgres _INT8 til Java-enhed ved hjælp af Hibernate?

_int8 er et internt alias for typen int8[] , dvs. en række lange heltal.

Jeg aner ikke hvorfor understregningspræfikset bruges, det er forfærdeligt, men det burde egentlig kun være synligt inde på serveren, så jeg er overrasket over at du ser det komme op i beskeder. Tag dette, for eksempel, hvor serveren viser bigint[] som kolonnetype i meddelelser:

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

Hvis du vil kortlægge det i Hibernate, skal du kortlægge det som en long[] , hvis Hibernate endda understøtter SQL-arrays - hvilket det ikke ser ud til . Du bliver sandsynligvis nødt til at tilføje din egen UserType-implementering, der bruger JDBC-understøttelse af SQL-arrays . Et andet eksempel på Hibernate-foraene . Det ser ud til at være lidt af et ofte stillede spørgsmål , men ligesom de fleste ting i Hibernate/JPA vil du opdage, at så snart du prøver at bruge andet end de mest basale databasefunktioner, vil du banke hovedet mod en murstensvæg.




  1. MySQL Brug WHERE-sætningen til at målrette mod en bestemt række

  2. Hvorfor laver Postgres en sekventiel scanning, hvor indekset ville returnere <1 % af dataene?

  3. hvordan man forespørger Oracle-database baseret på brugerinput ved hjælp af asp.net c#

  4. Oracle:Kan jeg se programmatisk, om en procedure indeholder en commit?