存储过程中动态sql语句
老师,您好,我想在存储过程中实现动态SQL,并且里面包括多个sql语句,应该如何表达,我的语句如下,提示如下错误信息ORA-01920用户名ctr6与另外一个用户名或角色名发生冲突
ORA-06512在ctr.test_count,line 10
ORA-06512在line3
查看错误堆栈的程序源?
语句:
create or replace procedure test_count
as
v_proc_name varchar2(50);
v_step varchar2(300);
v_sql varchar2(4000);
begin
v_proc_name:='test_count';
v_step:='插入表并授权DBA';
v_sql:='create user ctr6 identified by ctr6';
execute immediate v_sql;
v_sql:='grant dba to ctr6';
execute immediate v_sql;
commit;
end test_count;
1、ORA-01920就是在执行第一条v_sql的时候报错的,是不是ctr6用户已经存在?
2、动态sql可以通过定义变量,拼接sql的方法。 谢谢楼主 ,收下了
页:
[1]