H2偏移量不适用于大数,不知道为什么

时间:2018-09-07 16:32:16

标签: spring-boot h2 spring-boot-test

我正在尝试使用Spring Boot提供的内存中的h2测试mybatis映射器+ spring boot。 以下查询在作为我们的生产数据库的MsSQL中可以正常工作,但在用于集成测试的H2中则无法使用。

SELECT id   FROM tableName  ORDER BY id asc  OFFSET  CAST(  20000000000  AS BIGINT)  ROWS  FETCH NEXT 10000 ROWS ONLY;

我得到的错误是“数值超出范围:列中的“ 20000000000”; SQL语句:“

但是当我跑步

 SELECT CAST(  20000000000 AS BIGINT); 

工作正常。因此,这意味着CAST很好,在将Offset与H2一起使用时是否存在一些限制?

或者我在这里完全缺少一些东西。

侧注:我正在尝试使我的集成​​测试与“内存中”数据库进行通信,以使其在我们的jenkins CI管道中运行时更快并且全部封装在一起。 这是使用H2的已知限制吗?也许这会让我回到使用数据库服务器。

寻找有关为什么查询失败的大量建议仍然存在的建议。

0 个答案:

没有答案