我有一个包含一些代码的sql文件(abc.sql)。我可以使用" run“命令作为
SQL> run abc.sql
1* select 1 from dual
1
SQL>但无法使用"@“命令执行。如果我使用@执行,只需返回到SQL提示符,而不执行该文件。
SQL> @abc.sql
SQL>
SQL>你能帮我解决这个问题吗?
在HP-unix上使用Oracle8.1.7.4.0 (Tru64 UNIXV5.1B(Rev.2650))
发布于 2011-02-08 13:27:38
在你的文件中
select 1 from dual
/您需要告诉sql引擎执行行(/)
编辑
在@之后键入“编辑”并查看缓冲区中的内容:
SQL> @a.sql
1
----------
1
SQL> ed
Wrote file afiedt.buf
...
select 1 from dual
/发布于 2011-02-08 13:42:14
run不执行文件的内容。相反,它运行缓冲区的内容。
http://download.oracle.com/docs/cd/E11882_01/server.112/e16604/ch_twelve037.htm#sthref1803说
RUN
列出并执行当前存储在SQL缓冲区中的SQL命令或PL/SQL块。
缓冲区没有命令历史列表,也不记录SQL*Plus命令。
用法
RUN将导致SQL缓冲区的最后一行成为当前行。
斜杠命令(/)的功能类似于运行,但没有在屏幕上的SQL缓冲区中列出该命令。SQL缓冲区始终包含输入的最后一个SQL语句或PL/SQL块。
您可能错误地将run用于start命令。
https://stackoverflow.com/questions/4933550
复制相似问题