请指教,@ dba_files_all --- SP2-0310:无法打开文件" dba_files_all.sql" - 无法正常工作
答案 0 :(得分:4)
喜欢:/u01/app/oaracle/test.sql
ls -l /u01/app/oaracle/test.sql
答案 1 :(得分:3)
尝试在与调用函数相同的文件夹中执行文件时遇到此错误。在我的例子中,这个过程:
在我的情况下,问题是它失败的文件夹名称包含一个对Windows文件名有效但对SQL Developer感到困惑的字符(#
)。
答案 2 :(得分:1)
请注意
SQL> @some_file.sql
表示您正在使用的sql应用程序会使用“绝对路径” 查找,因此,如果您要使用“相对路径” ,请使用以下格式[add?]
SQL> @?some_file.sql
否则,在第一个命令中使用“完整路径” 。
答案 3 :(得分:0)
如果未对文件进行完全限定,则会出现 SP2-0310 错误。
不要依赖变量,而是指定完全限定的路径。
SQL> @/u01/app/oracle./scripts/myfile.sql
否则,转到文件所在的目录,然后调用sqlplus。
答案 4 :(得分:0)
到目前为止,所有答案都意味着需要绝对路径。那不是。 sql中的相对路径在sql工具中非常通用。有时,您必须配置丢失的默认配置,例如在SQLDeveloper的情况下,如本答案中所述: https://stackoverflow.com/a/24003529/442968
答案 5 :(得分:0)
你需要提供文件的路径为String,以双引号给出补丁它将起作用
例如
@“C:\ Users \ Arpan Saini \ Zions R2 \ Reports Statements and Notices \ Patch \ 08312017_Patch_16.2.3.17 \ DB Scripts \ snsp.sql”;
答案 6 :(得分:0)
执行以下步骤:
命令:cd C:\ DevPrograms \ apex
命令:sqlplus
成功连接后会显示
已连接到oracle 11g第2版。...
然后使用完整路径名运行follwing命令:
命令:@C:\ DevPrograms \ apex \ apxremov
最后,您会看到如下消息:
.... Application Express已删除
注意:您必须先退出此SQL * Plus会话,然后再运行apexins.sql
。
答案 7 :(得分:0)
我尝试解锁 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文件复制到错误指定的路径,并且一切正常。我建议您也这样做。检查错误中的路径并进行相应调整。
答案 8 :(得分:0)
验证您的文件的扩展名是 .sql 而不是 .sql.txt
答案 9 :(得分:0)
使用绝对路径或从指向脚本路径的 shell/dos 运行 sqlplus 命令。另外,要使用主脚本,请使用@@ 引用下标。