首先,这个问题与 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
"@@"
我收集的where表示SQL * Plus中的相对路径。
我自欺欺人地制造变量,但运气不佳。我已经能够使用'&1'
和传递根目录来做类似的事情。即:scripts / runEverything.sql:
@'&1/A/runAll.sql' '&1/A'
@'&1/B/runAll.sql' '&1/B'
并通过执行以下命令调用它:
@'c:/.../scripts/runEverything.sql' 'c:/.../scripts'
但是这里的问题是B/runAll.sql
使用path调用了c:/.../scripts/A/B
。
那么, 使用SQL Developer 可以进行嵌套调用吗?如何进行?
此方法包含两个组件:
-将活动的SQL Developer工作表的文件夹设置为默认目录。
-打开驱动程序脚本,例如runAll.sql(然后将默认目录更改为活动目录),并使用runAll.sql脚本中的相对路径来调用同级脚本。
工具>首选项
在首选项对话框中,导航到“数据库”>“工作表”>“选择默认路径以查找脚本”。
输入默认路径以将脚本查找为活动工作目录:
“ $ {file.dir}”
runAll.sql
A1.sql
A2.sql
runAll.sql的内容将包括:
@ A1.sql;
@ A2.sql;
若要测试此方法,请在SQL Developer中单击“文件”,然后浏览并打开script \ runAll.sql文件。
接下来,选择所有(在工作表上),然后执行。
通过导航和打开runAll.sql工作表的操作,默认文件夹变为“脚本”。
我正试图使用MacOS“scheduler”执行一些Java代码。 我的plist文件: 剧本上海: 问题是,我在程序中的所有相对路径(资源路径、属性、日志位置、Springbean文件等)都失败了。 plist文件位于根文件夹下,因此我假设所有路径都是相对于执行器位置的。
这是我自己的USB驱动器上的程序文件夹: 我想使用启动 我不能使用这个:
问题内容: 如果将PHP脚本作为cron脚本运行,则如果使用相对路径,则include常常会失败。例如,如果您有 在命令行上运行时会找到文件foo.php,但从cron脚本运行时找不到。 一个典型的解决方法是先chdir到工作目录,或使用绝对路径。但是,我想知道导致此行为的cron和shell之间的区别是什么。在cron脚本中使用相对路径时,为什么会失败? 问题答案: 从cron运行时,脚本的工作
问题内容: 如果使用绝对路径,则无法将整个目录移动到新位置。如果使用相对路径,则无法将单个文件移动到新位置。 这里有什么解决方案?您是否设置了一个包含根路径并从那里开始的配置文件?还是您有类似的规则:永不移动文件? 我在某些项目中看到人们使用dirname( FILE )。我的意思是,为什么不简单地将其删除,因为目录名还是相对的(取决于文件所在的位置)? 问题答案: 您应该使用一个配置文件,该配置
主要内容:什么是当前工作目录,什么是绝对路径与相对路径,Python处理绝对路径和相对路径在介绍绝对路径和相对路径之前,先要了解一下什么是当前工作目录。 什么是当前工作目录 每个运行在计算机上的程序,都有一个“当前工作目录”(或 cwd)。所有没有从根文件夹开始的文件名或路径,都假定在当前工作目录下。 注意,虽然文件夹是目录的更新的名称,但当前工作目录(或当前目录)是标准术语,没有当前工作文件夹这种说法。 在 Python 中,利用 os.getcwd() 函数可以取得当前工作路径的字
在 Linux 中,简单的理解一个文件的路径,指的就是该文件存放的位置,例如,在《 Linux文件系统的层次结构》中提到的 /home/cat 就表示的是 cat 文件所存放的位置。只要我们告诉 Linux 系统某个文件存放的准确位置,那么它就可以找到这个文件。 指明一个文件存放的位置,有 2 种方法,分别是使用 绝对路径和 相对路径。 我们知道,Linux 系统中所有的文件(目录)都被组织成以根