Пытаюсь проверить 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.