Смещение H2 не работает для больших чисел, любая идея почему - PullRequest
0 голосов
/ 07 сентября 2018

Пытаюсь проверить mybatis mappers + весеннюю загрузку, используя h2 в памяти, предлагаемой весенней загрузкой. Следующий запрос отлично работает в 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 в порядке. Существуют ли ограничения на использование смещения с H2?

Или я что-то здесь упускаю полностью.

Стороннее примечание: я пытаюсь, чтобы мои интеграционные тесты взаимодействовали с базой данных In Memory, чтобы она быстрее и полностью инкапсулировалась вместе, когда она запускается в нашем конвейере CI jenkins. Является ли это известным ограничением использования H2, и может быть, это заставит меня вернуться к использованию сервера базы данных вместо этого.

В поисках совета, почему ошибка запроса с большим числом в любом случае приводится в BIGINT.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...