【问题标题】:Hibernate import in PostgreSQL not workingPostgreSQL 中的休眠导入不起作用
【发布时间】:2016-04-04 23:50:28
【问题描述】:

我将 Hibernate 与 PostgreSQL 一起使用。我有一个 import.sql 文件,Hibernate 在创建/验证架构后执行该文件。它在 MariaDB 下工作,但在 PostgreSQL 下却不行。已创建表和约束,但未导入数据。以下是反复出现的错误示例:

20:24:00,034 ERROR [org.hibernate.tool.hbm2ddl.SchemaExport] (ServerService Thread Pool -- 119) HHH000388: Unsuccessful: INSERT INTO jcat.Student (id,childcare,birthdate,name,class_id)
VALUES (1,
    FALSE,
    "1992-09-15",
    "Douglas",
    1)
20:24:00,034 ERROR [org.hibernate.tool.hbm2ddl.SchemaExport] (ServerService Thread Pool -- 119) ERROR: column "1992-09-15" does not exist

它发生在每个插入语句中。我不知道单引号或双引号是否可以互换,但我尝试在我的导入文件中同时使用这两个引号,但没有一个起作用。错误日志显示单引号被转换为双引号(如上所示)。也许有一个我不知道的 Hibernate 属性?

软件版本是 PostgreSQL 9.5 和 Wildfly 9,并提供了 Hibernate(很可能是 4)。

【问题讨论】:

  • 我现在不知道,但是请您使用空日期重新运行您的测试吗?它可以工作,你可能在日期格式上有问题......如果它在“Douglas”上失败......对不起......不知道:p
  • 它在每个字符串上都失败,试图将它们解释为列。反正我就是修好了,虽然解决的不是很满意。

标签: java hibernate postgresql


【解决方案1】:

我通过将 Hibernate 从 4.3 更新到 5.1.0.Final 解决了我的问题。尝试导入我的 SQL 文件时,我有一个 additional error,但我通过从我的 Maven 依赖项中删除 antlr 来修复它,如下所示:

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>5.1.0.Final</version>
        <exclusions>
            <exclusion>
                <groupId>antlr</groupId>
                <artifactId>antlr</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-12-28
    • 2015-11-03
    • 2015-10-28
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多