sql >> Databáze >  >> RDS >> PostgreSQL

Použijte typ Point s PostgreSQL a JPA/Hibernate

NAINSTALUJTE ROZŠÍŘENÍ POSTGIS VE SVÉ DATABÁZI.

Chyba, se kterou se setkáváte, je způsobena tím, že jste do databáze nenainstalovali nic, s čím by se Hibernace mohla týkat. Je to postgres, kdo si stěžuje, viz:

Vaše anotace a konfigurace říkají, že jsou závislé na PostGIS:

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

V podstatě se tedy pokoušíte použít nepodporovanou konfiguraci.

PostgreSQL nepřichází se všemi možnými datovými typy, na které kdy kdo pomyslel, jako Oracle. Takže když Hibernate řekne „Chci ‚geometrii‘, PostgreSQL jen řekne „co je geometrie?“ PostgreSQL je velmi rozšiřitelný, takže lidé z PostGIS to udělali – vytvořili rozšíření. Každý si ho může nainstalovat nebo spustit úplně bez něj. Jediný problém způsobuje to, když to někdo očekává v předpřipravené databázi, spíše než aby to byl doplněk.

Předpokládám, že byste se mohli pokusit o zpětné inženýrství datových typů PostgreSQL a zkompilovat je ve vaší databázi. Geometrie je hlavní supertřída pro PostGIS, alespoň v Javě a v databázi vypadá stejně. Jen nechápu, proč byste nastavovali konfiguraci, když nikdy nikoho nepřimějete, aby ji podporoval.

@bluish pomáhá to?



  1. Úžasných 24 otázek souběžného manažerského rozhovoru

  2. Připojujete se k MS SQL Server s ověřováním Windows pomocí Pythonu?

  3. Jak napsat příkaz MySql select, abyste získali všechna definovaná nastavení nebo výchozí nastavení, která nejsou přepsána pro id v jednom příkazu

  4. Chyba syntaxe dotazu Postgres sql z phpPgAdmin