0

我正在尝试使用 postgis 设置一个带有休眠空间的项目。按照 hibernate-spatial 4.0-M1 的教程,我首先遇到了找不到依赖 postgis-jdbc-1.5.3.jar 的问题。就像有人在这里建议的那样,我使用了 1.5.2 版本并且教程编译了。

但是如果我尝试运行它,我会得到一个错误。我将休眠的调试级别设置为调试并偶然发现以下问题:

DEBUG SQL -
create table Event (
    id int8 not null,
    date timestamp,
    location GEOMETRY,
    title varchar(255),
    primary key (id)
)
Hibernate:
create table Event (
    id int8 not null,
    date timestamp,
    location GEOMETRY,
    title varchar(255),
    primary key (id)
)
ERROR SchemaExport - HHH000389: Unsuccessful: create table Event (id int8 not null, date timestamp, location GEOMETRY, title varchar(255), primary key (id))
ERROR SchemaExport - FEHLER: Typ ╗geometry½ existiert nicht  Position: 94

错误是德语,但意味着“几何”类型不存在。

如果我使用 create table 语句并在 pgadmin 中执行它,它可以找到,所以我认为数据库设置正确。

我的版本:

postgres          - 9.0     64Bit
postgis           - 2.0.1   64Bit
hibernate-spatial - 4.0-M1
hibernate         - 4.0.0-Final
postgis-jdbc      - 1.5.2

谢谢帮助

杰比

4

1 回答 1

0

您的 Postgresql 不支持几何。您需要为其添加postgis扩展名才能创建空间数据库。所以从这里为你的 postgresql 下载合适的 postgis 扩展。然后将其安装在postgresql安装文件夹中,例如(在我的系统中)在以下路径中:

 C:\Program Files (x86)\OpenGeo\OpenGeo Suite\pgsql\9.1
于 2015-01-31T17:27:31.370 回答