首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >@命令不适用于SQL (OS Unix)

@命令不适用于SQL (OS Unix)
EN

Stack Overflow用户
提问于 2011-02-08 13:23:40
回答 2查看 1.1K关注 0票数 0

我有一个包含一些代码的sql文件(abc.sql)。我可以使用" run“命令作为

代码语言:javascript
复制
SQL> run abc.sql
  1* select 1 from dual

         1

SQL>

但无法使用"@“命令执行。如果我使用@执行,只需返回到SQL提示符,而不执行该文件。

代码语言:javascript
复制
SQL>  @abc.sql
SQL>
SQL>

你能帮我解决这个问题吗?

在HP-unix上使用Oracle8.1.7.4.0 (Tru64 UNIXV5.1B(Rev.2650))

EN

回答 2

Stack Overflow用户

发布于 2011-02-08 13:27:38

在你的文件中

代码语言:javascript
复制
select 1 from dual
/

您需要告诉sql引擎执行行(/)

编辑

在@之后键入“编辑”并查看缓冲区中的内容:

代码语言:javascript
复制
SQL> @a.sql

         1
----------
         1

SQL> ed
Wrote file afiedt.buf

...

select 1 from dual
/
票数 1
EN

Stack Overflow用户

发布于 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命令。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4933550

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档