H2DB - MS SQL Режим совместимости с сервером не работает - PullRequest
0 голосов
/ 03 мая 2020

Я пытаюсь написать тестовые примеры для модуля / интеграции для Java кодовой базы, подключающейся к серверу MS SQL. В этом случае я могу успешно скопировать все мои SQL серверные таблицы в файл базы данных H2 и выполнить мои модульные тесты на базе данных H2.

Я тщательно рассмотрел совместимость с базами данных H2 * особенности.

  1. На моем URL JDB C установлен режим - jdb c: h2: ~ / test; MODE = MSSQLServer
  2. Попытка подключения к Файл H2DB и выполнен

    SET MODE MSSQLServer

  3. Я попытался выполнить это как в оперативной памяти, так и в файловом режиме, и оба не работают в режиме совместимости.

Оба они, похоже, не работают. Мои приложения SQL содержат подсказки NOLOCK и идентификаторы в квадратных скобках. Оба они указаны в документации по совместимости. Я даже просмотрел в github H2DB их модульный тест MS SQL Server и обнаружил, что они поддерживаются.

Все еще задаюсь вопросом, что мне не хватает.

1 Ответ

0 голосов
/ 04 мая 2020

Наконец-то выяснилось, что я использовал старую версию 'h2-1.4.197', где MS SQL Серверная совместимость не включена.

Итак, обновлен до версии 'h2-1.4.200', где подсказки like (NOLOCK) игнорируются, когда мы находимся в SQL режиме сервера. Квадратные скобки по-прежнему не игнорируются, но, по крайней мере, режим совместимости работает. Так что оставим это при этом.

...