DBeaver 从文件启动脚本

1st*_*30n 9 oracle dbeaver

我试图找到一个很好的替代 SQL Developer 来在 Oracle 实例上执行查询和脚本。

我发现DBeaver是一个有趣的工具,它有很多很棒的功能,它似乎缺少一个基本要素:以类似批处理的方式从客户端机器的文件系统启动脚本的可能性。

例如,在 SQL Developer 中,我简单地放置了一个名为delta_script.sql的文件,其中包含:

@script1.sql
@script2.sql
@script3.sql
Run Code Online (Sandbox Code Playgroud)

我将它作为脚本执行,软件以正确的顺序执行所有文件(前提是它们与 delta_script.sql 文件位于同一目录中)。

在 DBeaver 上,这不会发生,而是得到[900] ORA-00900:无效的 SQL 语句。.

我怎样才能管理它按预期工作?

我在 delta_script.sql 文件中尝试了以下内容,但没有成功:

  • @@scriptN.sql
  • @/tmp/folder/scriptN.sql
  • @"/tmp/folder/scriptN.sql"
  • @"scriptN.sql"

他们都给出了同样的错误,所以我认为“@”有问题。我已经在 SQLPlus 中尝试使用我在 SQL Developer 上使用的 synthax 没有错误。

Hyb*_*s95 0

Arobase@是 SQLPlus 的别名。

https://datacadamia.com/lang/sqlplus/arobase

别名
特殊字符 @ 也可用于启动脚本。
特殊字符@@ 允许从相对路径启动它。
?表示 ORACLE 主目录

它相当于START

https://datacadamia.com/lang/sqlplus/start_command

语法
STA[RT] {url|文件名} [arg ...]

确保使用“在 SQL Plus 中执行”(连接后,右键单击连接 > 工具 >“在 SQL Plus 中执行”)选项。