最近做项目发现数据量超过2^31-1(21亿多)行就有问题,请问如果想支持更大(目前数据量最大的表百亿左右),是否有现成的封装,谢谢。
8 回复
不报错,平时开发的时候没注意到,一到客户现场数据量大的时候,发现以前写的代码类似如下
……
……
Sql countSql = Sqls.fetchInt("select count(1) from xxx");
……
dao().execute(countSql);
pager.setRecordCount(countSql.getInt());
count(1) >Integer.MAX_VALUE 的情况下,就会有问题,前端页面显示是空。
有些地方用的dao.count(...)去统计行数,出来的数据也是不对的。
jyls是交易流水表
System.out.println(dao.count("jyls")); //738188983
System.out.println(dao.execute(Sqls.fetchLong("select count(1) from jyls")).getLong()); //5033156279
@laizhiming 你们用的什么数据库
dao().count() 貌似返回的是int @wendal 加几个返回long的方法?
添加回复
请先登陆