0

看法 :

CREATE OR REPLACE VIEW vw_XYZ AS
SELECT "TRN_REF_NO","ESN","COMPONENT","AMOUNT","CURRENCY","WAIVER","CHG_DESC"
FROM 
( WITH DATA AS
( SELECT LEVEL L FROM DUAL CONNECT BY LEVEL <= 5 )
  SELECT TRN_REF_NO,1 "ESN",'CHG_AMT_'||L "COMPONENT",
         DECODE(L,1,CHG_AMT,2,CHG_AMT_1,3,CHG_AMT_2,4,CHG_AMT_3,5,CHG_AMT_4) "AMOUNT",
         DECODE(L,1,CHG_CCY,2,CHG_CCY_1,3,CHG_CCY_2,4,CHG_CCY_3,5,CHG_CCY_4) "CURRENCY",
         DECODE(L,1,WAIVER,2,WAIVER1,3,WAIVER2,4,WAIVER3,5,WAIVER4) "WAIVER",
         DECODE(L,1,CHG_DESC,2,CHG_DESC1,3,CHG_DESC2,4,CHG_DESC3,5,CHG_DESC4) "CHG_DESC"
    FROM DATA
    JOIN tb_abc
      ON NVL(DECODE(L,1,CHG_AMT,2,CHG_AMT_1,3,CHG_AMT_2,4,CHG_AMT_3,5,CHG_AMT_4),'-1') <> -1
 ORDER BY TRN_REF_NO );

包体中的错误: 行:

INSERT INTO vw_XYZ 面临的错误: PACKAGE BODY 的编译错误

错误:PL/SQL:ORA-01031:权限不足

请注意:我们仅在19c数据库中遇到此问题。在12c数据库版本中,它编译成功

4

0 回答 0