oracle之--动态sql(execute immediate ‘ ‘)

动态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;
相关推荐
StarRocks_labs5 小时前
StarRocks Community Monthly Newsletter (Jun)
数据库·starrocks·数据湖·物化视图·存算分离
光电的一只菜鸡6 小时前
ubuntu之坑(十五)——设备树
linux·数据库·ubuntu
ob熔天使——武7 小时前
MySQL
数据库·mysql
小光学长7 小时前
基于vue框架的防疫物资仓库管理系统09y38(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库
野生技术架构师11 小时前
MySQL数据实时同步到Elasticsearch的高效解决方案
数据库·mysql·elasticsearch
白仑色11 小时前
Oracle 高可用性与安全性
数据库·oracle·数据安全·goldengate·高可用架构
紫无之紫12 小时前
SQL性能调优经验总结
数据库·sql·性能调优
CZZDg12 小时前
Redis Sentinel哨兵集群
java·网络·数据库
__风__12 小时前
PostgreSQL ExecInitIndexScan 函数解析
数据库·postgresql
小云数据库服务专线12 小时前
GaussDB in的用法
数据库·sql·gaussdb