Игнорировать / использовать скобки идентификаторов MSSQL из MSSQL в Maria DB 10.3 - PullRequest
1 голос
/ 11 июня 2019

Мы переключили наш движок базы данных для собственного приложения Windows с MSSQL на MariaDB. К сожалению, в приложении (только один) неправильный запрос, например:

ВЫБРАТЬ EXAMPLE ОТ MY_CATALOG ГДЕ [ПРИМЕР] = '123456';

Он выдает синтаксическую ошибку, потому что скобки [] вокруг «EXAMPLEID» здесь не являются допустимым SQL.

Как я видел, MariaDB 10.4 будет реализовывать режим MSSQL, который принимает эти скобки. Но есть ли возможность / возможность игнорировать этот запрос на стороне сервера MariaDB 10.3, чтобы наше приложение работало правильно? У нас нет доступа к исходному коду самого приложения, кстати ...

Есть идеи? :)

С наилучшими пожеланиями

1 Ответ

0 голосов
/ 14 июня 2019

В MariaDB 10.4 (который станет GA в течение следующих дней) вы можете сделать это, установив режим SQL в MSSQL.

mysql> set sql_mode="MSSQL";
Query OK, 0 rows affected (0.00 sec)

mysql> create table t1 (a int);
Query OK, 0 rows affected (0.02 sec)

mysql> insert into t1 values (1);
Query OK, 1 row affected (0.02 sec)

mysql> select * from t1 where [a]=1;
+------+
| a    |
+------+
|    1 |
+------+
1 row in set (0.01 sec)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...