不知道对不对,请指点!
mysql数据库中使用Db.queryLong(sql);提示:java.lang.Integer cannot be cast to java.lang.Long;
sql server数据库中使用Db.queryInt(sql);提示:java.lang.Long cannot be cast to java.lang.Integer;
mysql与sql server中使用Db.queryNumber(sql);正常;
总结一下问题:
------------------------------------------------------------
mysql数据库中
执行select count(1) 时,Db.queryInt()报错;
--------------------------------------------------------------
sql server数据库中
执行Db.queryLong();报错
----------------------------------------------------------------
追加:@Jfinal 所说3.2版本已验证,都没有问题
解决办法二选其一:
1:升级到 jfinal 3.2 , 这个版本对这种情况进行了自动类型转换
2:心中要清楚 count(...) 函数以后 JDBC 所返回的类型,然后使用正确的 queryXxx 方法
例如,心中知道结果是 Long 就用 queryLong,如果知道是 Integer 就用 queryInt