如何通过sqlplus解析这个CREATE语句?

时间:2014-09-20 04:52:57

标签: sql oracle sqlplus

我看到了一些我从未想过可以被SQLPLUS解析的CREATE语句:

plus@PDB1> #create 
2  or 
3  replace procedure p as 
4  begin 
5  null; 
6  end; 
7  / 

Procedure created. 

plus@PDB1> #create 
2  table t3(x int); 

Table created. 

那么英镑符号(#)如何解析?我找不到任何相关的文档。如果有文件,请指点我。

1 个答案:

答案 0 :(得分:3)

这是SQLPREFIX character。手册描述了它:

  

在输入SQL命令或PL / SQL块时,可以在单独的行上输入SQL * Plus命令,前缀为SQL * Plus前缀字符。 SQL * Plus将立即执行该命令,而不会影响您输入的SQL命令或PL / SQL块。

在SQL命令中运行SQL *Plus®命令的示例用例:

SQL> SELECT *
# show release
release 1102000200
FROM dual;

D
-
X

虽然你通常会使用它在一个较大的命令中立即运行一些东西,因为你可以在任何地方使用它,你也可以自己使用它。

SQL> # SELECT * FROM dual;

D
-
X