相关疑难解决方法(0)

Oracle分配给"count(*)"的SQL数据类型是什么?

Oracle count(*)在查询中分配的SQL数据类型是什么select count(*) from table?这取决于计数大小吗?

sql oracle sqldatatypes

12
推荐指数
1
解决办法
9654
查看次数

Spring Hibernate Template执行方法为Oracle上的计数查询返回什么对象类型?

当针对Oracle数据库运行时,以下Spring Hibernate Template(Spring 2.5和Hibernate 3.3.2GA)代码返回的对象的运行时类型是什么,SQL查询是一个计数查询,如select count(*) from table

 String sql = "select count(*) from table";
 BigDecimal count = (BigDecimal) hibernateTemplate.execute(
   new HibernateCallback() { 
    public Object doInHibernate(Session session) throws HibernateException {
     SQLQuery query = session.createSQLQuery(sql);
     return (BigDecimal) query.uniqueResult();
    }});
 return count;
Run Code Online (Sandbox Code Playgroud)

此代码抛出以下异常:

javax.ejb.EJBException: EJB Exception: : java.lang.ClassCastException: java.math.BigDecimal cannot be cast to [Ljava.lang.Object;
    at org.hibernate.cache.StandardQueryCache.put(StandardQueryCache.java:83)
    at org.hibernate.loader.Loader.putResultInQueryCache(Loader.java:2185)
    at org.hibernate.loader.Loader.listUsingQueryCache(Loader.java:2129)
    at org.hibernate.loader.Loader.list(Loader.java:2087)
    at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:289)
    at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1695)
    at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:142)
    at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:150)
    at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:804)
    at com.db.abstrack.dao.hibernate.RfqCdoUsDaoHibernate$1.doInHibernate(RfqCdoUsDaoHibernate.java:124)
Run Code Online (Sandbox Code Playgroud)

java oracle spring types hibernate

11
推荐指数
2
解决办法
2万
查看次数

标签 统计

oracle ×2

hibernate ×1

java ×1

spring ×1

sql ×1

sqldatatypes ×1

types ×1