[英]How to execute a dynamic sql statement in sql*plus
我想通过使用动态 sql 语句来修改一个值。 该示例被选择为可重现的。 我知道我不需要动态 sql 语句。
variable a number =1;
print a
1
exec execute immediate 'select 2 into :a from dual'
PL/SQL 过程成功完成。
print a
1
返回 1 而不是 2,这意味着我的语句没有被执行。
那么,如何执行呢?
INTO
应该execute immediate
:
SQL> var a number = 1;
SQL> print a
A
----------
1
SQL> exec execute immediate 'select 2 from dual' into :a;
PL/SQL procedure successfully completed.
SQL> print a
A
----------
2
SQL>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.