sql >> Database >  >> RDS >> PostgreSQL

Punttype gebruiken met PostgreSQL en JPA/Hibernate

INSTALLEER DE POSTGIS-UITBREIDINGEN IN UW DATABASE.

De fout die u tegenkomt, is omdat u niets in uw database hebt geïnstalleerd waar Hibernate betrekking op kan hebben. Het is postgres die klaagt, namelijk:

Uw annotaties en configuratie zeggen dat ze afhankelijk zijn van PostGIS:

<property name="hibernate.dialect"  value="org.hibernate.spatial.dialect.postgis.PostgisDialect" />

Dus eigenlijk probeer je een niet-ondersteunde configuratie te gebruiken.

PostgreSQL wordt niet geleverd met alle mogelijke gegevenstypen waar iemand ooit aan heeft gedacht, zoals Oracle. Dus als Hibernate zegt:"Ik wil een 'geometrie', zegt PostgreSQL gewoon "wat is een geometrie?" PostgreSQL is zeer uitbreidbaar, dus dat is wat de mensen van PostGIS deden - ze bouwden een extensie. Iedereen kan het installeren of helemaal zonder uitvoeren. Het enige probleem het veroorzaakt is wanneer iemand het verwacht in de kant-en-klare database in plaats van dat het een add-on is.

Ik veronderstel dat je zou kunnen proberen de PostgreSQL-gegevenstypen te reverse-engineeren en ze in je database te compileren. Geometrie is een master-superklasse voor PostGIS, tenminste in Java en het ziet er hetzelfde uit in de database. Ik zie gewoon niet in waarom je een configuratie zou opzetten als je nooit iemand kunt krijgen om het te ondersteunen.

@blauwachtig helpt dit?



  1. Oracle 12.2 - Vervanging van NOPARTITION-functie

  2. Kan Arabisch niet opslaan in MYSQL-database met behulp van PHP

  3. Haalt Oracle alle rijen op voordat rownum wordt geëvalueerd?

  4. Te vermijden valkuilen bij het gebruik van de nieuwe Microsoft SSMA-versie 7.8 "