【发布时间】:2014-01-28 13:33:32
【问题描述】:
我正在尝试创建一个包含在 Oracle 中使用的存储过程的包
在检查所有表字段后编译和执行时,
我有SQL statement ignored 和ORA-00926 for VALUES
您能否告诉我是否有任何检查这些错误的指南或者我应该关注什么语法?
下面是我的 SQL 脚本
CREATE OR REPLACE PACKAGE BODY TESTAS
PROCEDURE GETREPORT01 IS
BEGIN
EXECUTE IMMEDIATE "TRUNCATE TABLE TESTER.TEST_TB1";
INSERT INTO TESTER.TEST_TB1
SELECT
ACCOUNT_NUMBER,
SERVICE_ADDRESS_ID,
BILLING_CYCLE,
CUSTOMER_STATUS,
CUSTOMER_TYPE,
SUKET_NEW
FROM
ABC.DWH_BUCKETS
WHERE
CUSTOMER_TYPE = 'DIY'
ORDER BY
DECODE(CUSTOMER_STATUS, 'AC', 1, 'IN', 2, 3) DESC;
END GETREPORT01;
【问题讨论】:
-
TEST_TB1 的列有哪些?
-
ACCOUNT_NUMBER、SERVICE_ADDRESS_ID、BILLING_CYCLE、CUSTOMER_STATUS、CUSTOMER_TYPE、SUKET_NEW
-
如果你问题中的代码是你正在使用的完整代码,我认为你需要最后关闭包
-
如果与您的表
TESTER.TEST_TB1匹配,您是否检查了表ABC.DWH_BUCKETS的列类型? -
根据ora手册:
ERROR MESSAGE ORA-00926: missing VALUES keyword CAUSE OF ERROR You tried to execute a SQL INSERT statement and missed the VALUES keyword.