首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

动态SQL怎样创建用户?

2014-01-28 
动态SQL怎样创建用户?declare str varchar2(20) begin str:cv333 execute immediate create user :1

动态SQL怎样创建用户?

declare
str varchar2(20);
begin
str:='cv333';
execute immediate 'create user :1 identified by :2' using str,str;
end;

假设我要创建一个用户名和密码都是 cv333 的帐户,上面的哪里出错了呢,说是缺少用户或角色名,不明白,而且我用SYSTEM帐户来执行的,权限没问题的。

------解决方法--------------------------------------------------------
SQL> create or replace procedure proc_test
2 (
3 str varchar2
4 ) as
5 begin
6 execute immediate 'create user :1 identified by :2' using str, str;
7 end;
8 /

Procedure created.

SQL>

在DDL中使用绑定变量是非法的。直接传参数过来就可以了。

        

热点排行