Sqlplus中的VARIABLE以及使用VARIABLE之后使用execute。
variable命令:定义一个绑定变量,语法如下:
VAR[IABLE] [variable [NUMBER|CHAR|CHAR (n)|NCHAR|NCHAR
(n) |VARCHAR2 (n)|NVARCHAR2 (n)|CLOB|NCLOB|REFCURSOR]]
这个命令定义了一个绑定变量,这个变量可以在PL/SQL中被引用。当在SQL语句或者PLSQL程序中引用该变量时需要在这个变量前面加上“:”;
当你想给这个绑定变量赋值时需要使用EXECUTE命令来进行赋值。
例如这样:
VAR[IABLE] DATATEST NUMBER;
EXEC[UTE] :DATATEST:=200;
如果想显示出这个绑定变量的值那么可以采用如下两种方法:
PRINT DATATEST;----(不需要添加冒号,因为并非在SQL语句或者PLSQL中引用该变量)
或者 SELECT :DATATEST FROM DUAL;
在sql*plus中,该绑定变量可以作为一个存储过程的参数,也可以在匿名PL/SQL块中直接引用。
例如:
VAR DATATEST NUMBER;
EXEC :DATATEST:=200;
EXEC PROCDURE_TEST(:DATATEST);----(PRCODURE_TEST(DATA_TEST2 OUT NUMBER))
在带有out参数的存储过程中经常会使用到,但是有一点必须注意,这些命令都是在SQLPLUS下的,并非可以在PLSQL中进行使用。
其他SQLPLUS下的命令请参见SQLPLUS命令详解