NutzCN Logo
问答 超过int范围大数据量分页问题
发布于 2418天前 作者 laizhiming 1986 次浏览 复制 上一个帖子 下一个帖子
标签:

最近做项目发现数据量超过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的方法?

添加回复
请先登陆
回到顶部