【问题标题】:cannot get clob datatype from database into JPA entity无法将 clob 数据类型从数据库获取到 JPA 实体中
【发布时间】:2010-12-29 10:25:02
【问题描述】:

我可以保存(spring-hibernate saveorupdate())字段

 @Lob
 @Column(name = "FILENAME")
 private String filename;

进入oracle数据库的数据类型是clob

但是当我尝试检索它时,我得到了错误

错误 - JDBCExceptionReporter.logExceptions(72) | ORA-00932: 不一致的数据类型: 预期 - 得到 CLOB

下面是我如何从数据库中检索

DetachedCriteria crit = DetachedCriteria.forClass(Storagefile.class);
crit.addOrder(bSortOrder ? Order.asc(sortColumnId) : Order.desc(sortColumnId));
 List<Storagefile> result = (List<Storagefile>) getHibernateTemplate().findByCriteria(crit, nFirst, nPageSize);

【问题讨论】:

    标签: java oracle hibernate clob ora-00932


    【解决方案1】:

    从您的示例代码中不清楚,但我猜您正在尝试按 CLOB 列排序,而 Oracle 不允许这样做。该错误代码是 Oracle 告诉您这一点的迷人方式。

    您确定需要使用 CLOB 来存储文件名吗? Oracle 可以在 VARCHAR2 列中存储多达 4000 个字符,这对于文件名来说是否足够?如果你想按filename 排序,那么这就是你需要做的。

    【讨论】:

      【解决方案2】:

      你是否经历过这个:

      https://www.hibernate.org/56.html

      Oracle 9i 驱动程序和 LOB 似乎存在问题(不确定您的设置是什么)。

      【讨论】:

      • 我升级到 10gDialect 但还是一样。
      猜你喜欢
      • 2023-02-23
      • 2016-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-24
      • 1970-01-01
      • 2015-06-12
      • 2012-11-15
      相关资源
      最近更新 更多