Pet*_*ang 6 sql sqlplus oracle10g
当我有两个sql文件时,其中一个在子目录中
main_test.sql
sub/sub_test.sql
Run Code Online (Sandbox Code Playgroud)
和sub_test.sql调用@../main_test.sql(或@@../main_test.sql)然后从子目录执行它时工作正常
sub> sqlplus xxx @ sub_test.sql
Run Code Online (Sandbox Code Playgroud)
但是当我打电话时
sub> cd ..
> sqlplus xxx @ sub/sub_test.sql
Run Code Online (Sandbox Code Playgroud)
这导致了
SP2-0310: unable to open file "../main_test.sql"
Run Code Online (Sandbox Code Playgroud)
因为路径是从我的工作目录评估的,而不是我调用的sql文件的目录.
有没有办法从包含调用的文件目录开始使用相对路径?
遗憾的是,不支持“文件”网址 - 因为在使用“http://”路径时,这实际上效果很好!
我设置了 'sub_test\sub_test.sql' 来包含 double-ats:
@@../main.sql
Run Code Online (Sandbox Code Playgroud)
将整个目录结构放在 Tomcat webapps/ROOT 上下文下,如果您像这样调用它就可以工作:
SQL> @http://host:port/sub_test/sub_test.sql
Run Code Online (Sandbox Code Playgroud)
我想设置一个网络服务器可能有点矫枉过正了?(显然也可以与 FTP 一起使用 - 没有尝试过)。