【发布时间】:2014-07-23 01:09:45
【问题描述】:
首先,这个问题与 Oracle SQL Developer 3.2 相关,而不是 SQL*Plus 或 iSQL 等。我进行了大量搜索,但没有找到直接答案。
我有几个我正在尝试自动化的脚本集合(顺便说一句,我的 SQL 经验非常基础,并且主要基于 MS)。我遇到的麻烦是通过相对路径执行它们。例如,假设这样的设置:
scripts/A/runAll.sql
| /A1.sql
| /A2.sql
|
/B/runAll.sql
/B1.sql
/B2.sql
我想要一个文件scripts/runEverything.sql 像这样:
@@/A/runAll.sql
@@/B/runAll.sql
脚本/A/runAll.sql:
@@/A1.sql
@@/A2.sql
据我所知,"@@" 表示 SQL*Plus 中的相对路径。
我一直在制作变量,但运气不佳。我已经能够使用'&1' 并传入根目录来做类似的事情。 IE。:
脚本/runEverything.sql:
@'&1/A/runAll.sql' '&1/A'
@'&1/B/runAll.sql' '&1/B'
并通过执行这个来调用它:
@'c:/.../scripts/runEverything.sql' 'c:/.../scripts'
但这里的问题是 B/runAll.sql 被调用路径为:c:/.../scripts/A/B。
那么,是否可以使用 SQL Developer 进行嵌套调用,以及如何进行?
【问题讨论】:
标签: sql oracle oracle-sqldeveloper relative-path sql-scripts