【发布时间】:2015-07-26 08:27:47
【问题描述】:
请指教。这个 SQLPlus 调用:
SQL > @dba_files_all
...不工作。
SP2-0310:无法打开文件“dba_files_all.sql”
我该如何解决这个错误?
【问题讨论】:
标签: sqlplus
请指教。这个 SQLPlus 调用:
SQL > @dba_files_all
...不工作。
SP2-0310:无法打开文件“dba_files_all.sql”
我该如何解决这个错误?
【问题讨论】:
标签: sqlplus
您需要以字符串形式提供文件的路径。
将路径放在双引号中即可。
例如:
@"C:\Users\Arpan Saini\Zions R2\Reports Statements and Notices\Patch\08312017_Patch_16.2.3.17\DB Scripts\snsp.sql";
【讨论】:
1.使用绝对路径:
/u01/app/oaracle/test.sql
2.检查路径是否存在脚本:
ls -l /u01/app/oaracle/test.sql
【讨论】:
我在尝试执行与调用函数位于同一文件夹中的文件时遇到此错误。在我的例子中,这个过程:
在我的情况下,问题在于失败的文件夹名称包含一个字符 (#),该字符对 Windows 文件名有效,但对 SQL Developer 来说是混乱的。
【讨论】:
注意
SQL> @some_file.sql
表示您正在使用的 sql 应用程序将使用 "absolute path" 查找,因此如果您想使用 "relative path" 使用以下格式 [add ?]
SQL> @?some_file.sql
否则,在第一个命令中使用 “完整路径”。
【讨论】:
到目前为止,所有答案都暗示需要绝对路径。那不是。 sql 中的相对路径在 sql 工具中非常普遍。有时,您必须配置丢失的默认配置,例如在 SQLDeveloper 的情况下,如本答案中所述: https://stackoverflow.com/a/24003529/442968
【讨论】:
我在尝试解锁 oe 架构 时遇到了同样的错误。 在阅读错误时,我意识到当我运行以下行时:
>SQL @?/demo/schema/order_entry/oe_main.sql
错误返回了完全不同的路径
SP2-0310: unable to open file "C:/app/USER/product/18.0.0/dbhomeXE/demo/schema/order_entry/oe_main.sql"
因此,我将我的 sql 文件复制到了错误指定的路径,一切正常。我建议你也这样做。检查错误中的路径并进行相应调整。
【讨论】:
确认您的文件具有扩展名 .sql 而不是 .sql.txt
【讨论】:
使用绝对路径或从指向脚本路径的 shell/dos 运行 sqlplus 命令。此外,要使用主脚本,请使用 @@ 引用下标。
【讨论】: