create or replace procedure createtable(tname in varchar2)
is
sqlTEXT varchar2(400);
v_createsql varchar2(400);
v_dropsql varchar2(100);
v_count number(9);
begin
sqlTEXT := 'grant create any table to newsname'; --newsname为数据库用户名,这里需要给他创建表的权限
EXECUTE IMMEDIATE sqlTEXT;
v_createsql:='create table '||tname||'(
a number(8) primary key,b varchar2(20))';
v_dropsql:='drop table '||tname||' cascade constraints';
select count(*) into v_count from user_tables where table_name=upper(tname);
if v_count>0 then
execute immediate v_dropsql;
commit;
end if;
execute immediate v_createsql;
commit;
end;
总结
以上是编程之家为你收集整理的用oracle存储过程创建表全部内容,希望文章能够帮你解决用oracle存储过程创建表所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。