动态sql--execute immediate ' '
原因:ddl语句,truncate语句 不能直接使用,需要封装起来
sql
--动态sql--execute immediate ' '====因为ddl,truncate 不能直接使用,需要封装起来
--1.TRUNCATE table
declare
BEGIN
--truncate table emp_4;
execute immediate 'truncate table emp_4';--立即执行清除表数据(工作中经常使用)
end;
--2.create table emp_4 as selcet * from emp;--备份表(工作中经常使用)
declare
BEGIN
execute immediate 'create table emp_4 as selcet * from emp';
end;
--3.alter table emp_4 ADD aaa number;---添加aaa表字段
declare
BEGIN
execute immediate 'alter table emp_4 ADD aaa number';
end;
--4.alter table emp_4 modify aaa varchar2(10);---修改aaa的字段类型
declare
BEGIN
execute immediate 'alter table emp_4 modify aaa varchar2(10)';
end;
--5.alter table emp_4 drop COLUMN aaa;--删除aaa表字段
declare
BEGIN
execute immediate 'alter table emp_4 drop COLUMN aaa';
end;
--6.alter table emp_4 rename column aaa to bbb;--修改字段名
declare
BEGIN
execute immediate 'alter table emp_4 rename column aaa to bbb';
end;
--7.alter table emp_4 rename to emp_8;--修改表名
declare
BEGIN
execute immediate 'alter table emp_4 rename to emp_8';
end;
--8.drop table emp_4 ;--删除表
declare
BEGIN
execute immediate 'drop table emp_4';
end;