加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

用oracle存储过程创建表

发布时间:2020-12-12 15:26:20 所属栏目:百科 来源:网络整理
导读: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为数据库用户名,这里
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;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读