我在PLSQL写的package包,编译没有错误,执行也没错误,就是建不了表。求解啊

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我在PLSQL写的package包,编译没有错误,执行也没错误,就是建不了表。求解啊相关的知识,希望对你有一定的参考价值。

CREATE OR REPLACE PACKAGE BODY CHENGPACKAGE IS
PROCEDURE CHENGCHENG IS
V_SQL VARCHAR2(4000);
BEGIN
V_SQL :='CREATE TABLE' || 'ABC' || 'AS'
|| 'SELECT * FROM INTER_BILL WHERE USER_ID="1112071803568396"';

COMMIT;
END CHENGCHENG;
END CHENGPACKAGE;

只是定义了SQL字符串,要执行一下。
execute immediate v_sql;
commit;来自:求助得到的回答
参考技术A execute immediate v_sql;
commit;追问

在plsql里点测试然后执行不可以吗?

追答

所谓动态SQL执行过程有几步:
1、动态语句赋值给一个变量;
2、执行动态语句;
3、提交。
你的测试不等于执行动态语句

以上是关于我在PLSQL写的package包,编译没有错误,执行也没错误,就是建不了表。求解啊的主要内容,如果未能解决你的问题,请参考以下文章

使用plsql创建package

遇到符号“文件结尾” - plsql

编译 PLSQL 函数时出现“未找到数据”错误

ORA-24344: 尝试在 plsql 中创建函数时编译错误成功

包安装错误:编译失败

oracle表删除后在plsql的左侧还是能看到