Yblog = young blog
星期五, 八月 10, 2012
No Dialect mapping for JDBC type: -9 的解決方式

使用 Hibernate 存取 Oracle 的時候,如果是自己下 SQL 而不使用 HQL , 則可能會遇到這個 exception :

org.hibernate.MappingException: No Dialect mapping for JDBC type: -9

解決方式就是要指定回傳值的型態,例如:

    String stSQL = "SELECT MAX(id) AS serial_number FROM your_table WHERE TO_NUMBER(id)>20120101 AND TO_NUMBER(id)<20121231;
    List<?> serialNumberList = (List<?>)this.getSessionFactory().getCurrentSession().createSQLQuery(stSQL)
                                                              .addScalar("serial_number", new org.hibernate.type.StringType()).list();










Collablog Portal enabled