从SOCI Firebird后端的select语句返回的行的限制是多少?

时间:2019-04-07 14:22:31

标签: firebird soci

使用SOCI Firebird v4.0干线从Firebird数据库读取/写入数据。

问题是,当我通过select语句从一个表中选择超过200万行的所有行时,SOCI抛出一个std::bad_alloc异常,而我得到的值恰恰是 1024 * 1024 行,即: 1048576

我不知道SOCI是否有限制,或者我在这里还缺少其他东西!

顺便说一句,我将行存储在std::vector中。

1 个答案:

答案 0 :(得分:0)

SOCI和Firebird都不对此负责。 唯一的原因是系统本身的内存不足,并且无法处理 32位版本的 2 ^ 32 。 我必须在 64位中重新编译代码,并在 64位系统中对其进行测试。