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时程序在时间上就成了 “先插入再造表”
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。