我正在使用git extension配置DBeaver存储库,并制作一些脚本与我的团队共享。但是我们使用多种数据库类型,例如Oracle,SQL Server和DB2。我不想将相同的脚本制作3次,每次都针对不同的数据库,因为某些功能是特定于数据库的。
是否有一些技巧可以做到这一点,而不必对数据库功能重复脚本?像SQL Dialect Abstraction of Firedac一样。
答案 0 :(得分:0)
据我所知,DBeaver没有指定当前数据库的环境变量。
您可以使用一些技巧;在每个数据库中创建1个字段自定义表,并用数据库类型(自定义值)的单个记录填充该表,然后使用SQL CASE STATEMENT
选择每次运行的SQL命令。
@EDIT
我在DB configuration -> Connection settings -> Shell Commands
中找到了
环境变量列表,我不知道如何使用它们,但请看一下:
${host} - target host
${port} - target port
${server} - target server name
${database} - target database
${user} - user name
${password} - password (plain)
${url} - JDBC URL
${workspace} - workspace path
${home} - user home path
${dbeaver_home} - application install path
${application.name} - application name
${application.version} - application version
${local.ip} - local IP address