我正在使用Oracle 11g
。当我打开一个新的SQL文件编写命令
ed filename.sql
我的bin
文件夹中创建了一个名为filename
的新文件,但为了方便起见,我希望它们位于不同的文件夹中。我正在开发3个应用程序(仅适用于我的练习)。我希望它们存储在每个项目的不同文件夹中。我尝试了以下所有这些工作,请告诉我如何将文件保存到特定的文件夹中。
ed erp/logindetails.sql
ed 'erp/logindetails.sql'
ed "erp/logindetails.sql"
ed 'erp\logindetails.sql'
ed erp\logindetails.sql
除了""
使用的地方之外,这些命令工作并打开了名称为afiedt.buf
的默认文本编辑器,当我只输入edit
时,我得到了该文件编辑器。使用上述任何命令都不会创建任何文件。
答案 0 :(得分:0)
您正在为EDIT
提供文件的相对路径;因为您当前的工作目录似乎是SQL * Plus目录所在的bin
目录(这是Windows,并且您运行的是设置工作目录的快捷方式吗?)它会尝试创建一个文件比如%ORACLE_HOME%\bin\erp\logindetails.sql
,你不可能在那里创建一个erp
目录。提供目录的完整路径将起作用:
edit c:\users\dibya\projects\erp\logindetails.sql
例如。
如文档中所述,EDIT
将搜索现有文件,但这涉及设置环境变量 - 在项目之间移动时必须更改这些变量。您可能会发现在OS中编辑文件更容易,只需从SQL * Plus运行它们。
您也可以使用单独的快捷方式为每个项目启动SQL * Plus,每个项目都将'start in'目录设置为项目特定的位置 - 然后只需edit logindetails.sql
即可找到正确的位置默认情况下。或者,从命令提示符cd
进入相关的项目特定目录并从那里启动SQL * Plus,这实际上是一个快捷方式。