栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

EXECUTE IMMEDIDATE 动态创建表和插入数据

EXECUTE IMMEDIDATE 动态创建表和插入数据

EXECUTE IMMEDIDATE 动态创建表和插入数据
-- 创建存储器,表的id、
create or replace procedure create_table(i_id   number,i_name varchar,i_sal  number) as
  v_table varchar2(200) := 'emp_test'; -- 表名
  v_count number(7);  --判断表是否存在 1 表示存在 0表示不存在
begin
 --查询表是否存在,count(1)的值赋给 v_count
  select count(1) into v_count from user_tables where table_name = upper(v_table); 
  --判断表是否存在。
  if v_count = 0 then
  --创建表
    execute immediate 'create table ' || v_table || '(
            id number(7),
            name varchar(200),
            sal number(7,2))';
    --表存在   插入数据
  elsif v_count = 1 then
    execute immediate 'insert into emp_test values(:1,:2,:3)'
      using i_id, i_name, i_sal;
  end if;
  commit;
end;
--测试
declare
v_id number(7);
v_name varchar(200);
v_sal number(7,2);
begin
  v_id :=&v_id;
  v_name :=&v_name;
  v_sal :=&v_sal;
  create_table(v_id,v_name,v_sal);
end;
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/689880.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号