为什么hibernate在插入和删除操作期间会生成’T_’前缀tableName?
数据库:ORACLE
我们在hibernate和hbm文件中使用ImprovedNamingStrategy,我们明确地给出了表名。
但是,仍然,在删除和插入操作期间,它生成’T_’作为前缀,’HT_’作为一些表的前缀。
这导致SQLGrammarException:
org.hibernate.exception.SQLGrammarException:无法执行语句
请注意,使用Oracle数据库时会发生这种情况,HSQL或Postgres不会发生这种情况。
您似乎正在运行一些批量操作,这是临时表。 这是官方Hibernate论坛上的一个主题 ,很可能是同样的问题。 这是一篇文章 ,解释为什么需要这些表格。
解决方法是避免批量操作或只是让Hibernate创建这个临时表。
- 获取对象字段前值hibernate JPA
- java.lang.NoSuchMethodError:javax.persistence.OneToMany.orphanRemoval()
- 需要一个Hibernate中主键@OneToOne映射的示例
- 没有xml的spring + hibernate映射类
- 复杂的Hibernate预测
- 以编程方式创建一个hibernate析取查询
- 如何配置Hibernate以立即应用所有保存,更新和删除?
- 在playframework的子模块中添加jpa / hibernate @Entity到实体管理器进行扫描
- 使用JPA和Hibernate加载没有N + 1笛卡尔积的递归对象图