SP2-0310:无法打开文件" dba_files_all.sql"

时间:2015-07-26 08:27:47

标签: sqlplus

请指教,@ dba_files_all --- SP2-0310:无法打开文件" dba_files_all.sql" - 无法正常工作

10 个答案:

答案 0 :(得分:4)

1。使用绝对路径

喜欢:/u01/app/oaracle/test.sql

2。检查脚本是否存在的路径

ls -l /u01/app/oaracle/test.sql

答案 1 :(得分:3)

尝试在与调用函数相同的文件夹中执行文件时遇到此错误。在我的例子中,这个过程:

  • SQL Developer ;
  • 中执行
  • 一直是我系统的一部分(通过各种文件夹移动一些设置和变量名称的设置文件;这些文件夹名称包括功能ID和简短描述);
  • 过去工作得很好;
  • 我的案例中不需要任何路径,因为文件位于同一个文件夹中;
  • 上述错误的最近一次尝试失败( SP2-0310 )。

在我的情况下,问题是它失败的文件夹名称包含一个对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)

执行以下步骤:

  • 运行
  • 中使用cmd打开终端
  • 转到提取顶点以进行安装的文件夹(在我的情况下,路径为C:\ DevPrograms \ apex)
      

    命令:cd C:\ DevPrograms \ apex

  • 然后连接sqlplus面板
      

    命令:sqlplus

  • 输入用户名:conn sys / 780 @ xe as sysdba

成功连接后会显示

  

已连接到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 命令。另外,要使用主脚本,请使用@@ 引用下标。