有没有办法在不知道数据库类型的情况下检测 SQL 方言?
Is there a way to detect SQL Dialect without knowing the database type?
我正在使用 Dbeaver 通过 ODBC 连接到数据库。我不知道它是什么类型的数据库。它可能是专有的。谁知道?
有没有办法弄清楚要使用 SQL 的哪种方言? LIMIT 语句不起作用,我不想整天选择 * 来破坏东西。
我尝试了其他几种方法来限制结果 - https://en.wikipedia.org/wiki/Select_(SQL)#Limiting_result_rows - 但我找不到有效的选项。
提前致谢!
又试了几个limit-style语句,发现是SQLServer/Access
假设您只执行一次此数据库服务器识别,您可以发出查询以查看哪些有效或无法确定数据库服务器类型。
对于SQL服务器,有很多比如选择@@变量之一Select @@version
.
对于 Oracle,Select 1 FROM DUAL;
这两个查询都不修改任何数据,应该运行 很快。其他数据库服务器也有等效的。
还可以查看连接字符串并找出正在使用的数据库驱动程序类型。
我正在使用 Dbeaver 通过 ODBC 连接到数据库。我不知道它是什么类型的数据库。它可能是专有的。谁知道?
有没有办法弄清楚要使用 SQL 的哪种方言? LIMIT 语句不起作用,我不想整天选择 * 来破坏东西。
我尝试了其他几种方法来限制结果 - https://en.wikipedia.org/wiki/Select_(SQL)#Limiting_result_rows - 但我找不到有效的选项。
提前致谢!
又试了几个limit-style语句,发现是SQLServer/Access
假设您只执行一次此数据库服务器识别,您可以发出查询以查看哪些有效或无法确定数据库服务器类型。
对于SQL服务器,有很多比如选择@@变量之一Select @@version
.
对于 Oracle,Select 1 FROM DUAL;
这两个查询都不修改任何数据,应该运行 很快。其他数据库服务器也有等效的。
还可以查看连接字符串并找出正在使用的数据库驱动程序类型。