Ich bekomme unten Fehler beim Erstellen unten Prozedur, ich habe auch den Großteil des Teils aus der Prozedur entfernt und enthalten nur Teil, die ich mit Problemen konfrontiert bin. Problem ist in der Entschlüsselungsklausel, bitte helfen !!!Orakel Fehler beim Kompilieren
[Warning] ORA-24344: Erfolg mit Kompilierungsfehler 84/41 PL/SQL: ORA-00907: fehlende rechte Klammer 33/4 PL/SQL: SQL-Anweisung ignoriert (2: 0): Warning : kompiliert aber mit Kompilierungsfehlern
CREATE OR REPLACE PROCEDURE ERR_OUT (
in_Srcsyscd IN VARCHAR2)
IS
rcrdnums VARCHAR2 (32767);
rcrd_cnt INT;
BEGIN
rcrd_cnt := 500;
SELECT RTRIM (
XMLCAST (
XMLAGG (XMLELEMENT (e, RCRDNUM) ORDER BY RCRDNUM) AS CLOB),
',')
INTO rcrdnums
FROM (SELECT (ERR.RCRDNUM || ',') AS RCRDNUM
FROM tableName ERR
WHERE ROWNUM <= rcrd_cnt
AND ( in_srcsyscd IS NULL
OR (decode (REGEXP_COUNT (in_srcsyscd, ','),0,(ERR.Srcsyscd = in_srcsyscd),
(ERR.Srcsyscd IN
(SELECT DISTINCT srcsyscd
FROM tableName
WHERE srcsyscd IN
(SELECT err.srcsyscd
FROM tableName ERR
RIGHT OUTER JOIN
( SELECT UPPER (
REGEXP_SUBSTR (
in_Srcsyscd,
'[^,]+',
1,
LEVEL))
CNTRY_CD
FROM DUAL
CONNECT BY REGEXP_SUBSTR (in_Srcsyscd,
'[^,]+',
1,
LEVEL)
IS NOT NULL) CNTRY_P
ON (UPPER (
ERR.srcsyscd) !=
CNTRY_P.CNTRY_CD))
OR srcsyscd IS NULL)))))
Im Folgenden finden Sie die where-Klausel, wo ich Fragen stehe vor und gibt es kein Problem mit der Zählung der Klammer, dass ich beobachten kann, aber immer noch Orakel Fehler für diese wirft:
AND ( in_srcsyscd IS NULL
OR (decode (REGEXP_COUNT (in_srcsyscd, ','),0,(ERR.Srcsyscd = in_srcsyscd),
(ERR.Srcsyscd IN
(SELECT DISTINCT srcsyscd
FROM AMT_OWNER.AMT_EVNT_SPND_ERR_STG
WHERE srcsyscd IN
(SELECT err.srcsyscd
FROM TableName
RIGHT OUTER JOIN
( SELECT UPPER (
REGEXP_SUBSTR (
'CONCUR',
'[^,]+',
1,
LEVEL))
CNTRY_CD
FROM DUAL
CONNECT BY REGEXP_SUBSTR (
'CONCUR',
'[^,]+',
1,
LEVEL)
IS NOT NULL) CNTRY_P
ON (UPPER (
ERR.srcsyscd) !=
CNTRY_P.CNTRY_CD))
OR srcsyscd IS NULL)))))
‚fehlende rechte Klammer‘ gibt Ihnen alle. Wenn Sie Notepad ++ oder etwas Hilfe mit der Klammer verwenden, werden Sie feststellen, dass Sie eine letzte Klammer auf verpassen ... "ODER srcsyscd IS NULL)))))" –
Dies scheint keine Klammerprobleme zu sein. –