我很惊讶,我在任何地方都没有找到关于此的任何信息,但是如何使用sqlplus执行带有文件绝对路径的文件?在互联网上说
sqlplus databaseURL @sqlFile
如果我将其用作相对文件,并且将SQL文件放在同一目录中,则可以使用。但是在“ @”之后使用路径不起作用,并且在运行命令时显示“文件不存在”。该文件肯定在指定的路径中,并且我在Windows上。
我如何进行这项工作?
编辑:相对路径示例:
sqlplus -l user/pw@localhost:1521/service @test.sql;
绝对路径示例
sqlplus -l user/pw@localhost:1521/service @D:/folder/test.sql;
还有另一种可能性:设置SQLPATH环境变量以指定SQL * Plus对SQL文件的期望位置:
SQLPATH注册表项指定SQL脚本的位置。SQL * Plus在当前目录中搜索SQL脚本,然后在SQLPATH注册表项指定的目录,以及SQLPATH目录的子目录。
HKEY_LOCAL_MACHINE \ SOFTWARE \ ORACLE \ HOME0注册表子项(或关联的ORACLE_HOME的HOMEn目录)包含SQLPATH注册表项。创建的SQLPATH的默认值为ORACLE_HOME \ DBS。您可以将任何驱动器上的任何目录指定为有效值。
[设置SQLPATH注册表项时,可以用分号(;)串联目录。例如:
c:\oracle\ora12\database;c:\oracle\ora12\dbs
有关如何编辑SQLPATH注册表项的说明,请参阅注册表编辑器的帮助系统。