千家信息网

建表时向表中插入数据

发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,DECLAREBEGINexecute immediate 'create table TJ_JKTJBACK(tjbh VARCHAR2(200) not null,grbh VARCHAR2(20
千家信息网最后更新 2025年01月22日建表时向表中插入数据

DECLARE

BEGIN
execute immediate 'create table TJ_JKTJBACK
(
tjbh VARCHAR2(200) not null,
grbh VARCHAR2(200),
tjlb VARCHAR2(10),
tjlbmc VARCHAR2(500)
)';
execute immediate 'INSERT INTO TJ_JKTJBACK SELECT * FROM TJ_JKTJ';
commit;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
END;

execute immediate可以绕过db对语句的检查。不加时表还未创建,DB分析insert语句时报错。

普通的SQL语句在编译的时候就会执行
所以不加execute immediate时程序在时间上就成了 "先插入再造表"


0