【发布时间】:2019-10-25 18:12:45
【问题描述】:
我们将用于原生 Windows 应用程序的数据库引擎从 MSSQL 切换到 MariaDB。不幸的是,应用程序中有(只有一个)错误查询,如下所示:
SELECT EXAMPLE FROM MY_CATALOG WHERE [EXAMPLEID]='123456';
它会引发语法错误,因为“EXAMPLEID”周围的 [ ] 括号在这里不是有效的 SQL。
正如我所见,MariaDB 10.4 将实现一个接受这些括号的 MSSQL 模式。但是是否有任何可能性/选项可以在 MariaDB 10.3 服务器端忽略此查询以使我们的应用程序正常工作?顺便说一句,我们无法访问应用程序本身的源代码...
有什么想法吗? :)
最好的问候
【问题讨论】:
-
即使您可以找到忽略错误的方法,如果此查询失败,您的应用程序逻辑是否正确?另请注意,一般来说,从 SQL Server 到 MariaDB 的过程中可能会出现更多问题。最好的长期修复是更新您的源代码。
-
是的,其他一切都按预期工作。只有这个查询。问题是,完整的交易因此而失败。我们不需要此查询的功能。它可能导致 null,但根本没有 SQL 语法错误。
-
SQL Server 使用括号; MariaDB 没有。去掉括号。
-
@RickJames 不可能...请再次阅读我的问题
-
向 MariaDB 提交错误报告。