Hibernate无法支持ORACLE的rowid查询
在利用Hibernate的进行标准的SQL进行查询时,竟然不支持ORACLE的rowid直接查询:
session.createSQLQuery("select rowid from oracletablename").list();session.createSQLQuery("select length(rowid) len from oracletablename").list();session.createSQLQuery("select nvl2(rowid,'',rowid) orarowid from oracletablename").list();org.hibernate.dialect.TypeNames.get(-8);
public class Oracle9iOr10gDialet extends Oracle10gDialect {public Oracle9iOr10gDialet(){super();super.registerColumnType(-8, "string");////rowid对应的columnType为-8,将rowid视作一个字段值super.registerHibernateType(-8, "string");}}