2013-07-19 5 views
1

Я хочу выполнить эту процедуру со следующими входными параметрами.Отсутствует ошибка оглавления oracle ORA-00907

DECLARE 
    in_fieldname_list VARCHAR2(4000); 
    L_FILE_NAME VARCHAR(200); 


    BEGIN 

    in_fieldname_list := 'PROPTYPE'', ''ADDR1'', ''CITY'', ''STATE'', ''ZIP'', ''OAPPRAISAL'; 

    pack_audit_trail_report.SP_AUDIT_TRAIL ( 
     'B', 
     'LEH005', 
     NULL, 
     NULL, 
     in_fieldname_list, 
     '12/10/2012', 
     '01/15/2013', 
     L_FILE_NAME); 
    END; 

Я получаю следующее сообщение об ошибке:

Error report: 
: missing right parenthesis 
ORA-06512: at "SYS.DBMS_SYS_SQL", line 909 
ORA-06512: at "SYS.DBMS_SQL", line 39 
ORA-06512: at "CDM.PACK_AUDIT_TRAIL_REPORT", line 166 
ORA-06512: at line 10 
00907. 00000 - "missing right parenthesis" 
*Cause:  
*Action: 

Пожалуйста, дайте мне знать, где я пропускаю скобки.

ответ

3

Я не знаю, что ваша SP_AUDIT_TRAIL процедура требует, но я чувствую, вы должны кормить его список полей с правильным количеством цитат:

in_fieldname_list := '''PROPTYPE'', ''ADDR1'', ''CITY'', ''STATE'', ''ZIP'', ''OAPPRAISAL'''; 
+2

Использование оператора Q делает это ИМХО немного более читаемым: •» | «PROPTYPE», «ADDR1», «CITY», «STATE», «ZIP», «OAPPRAISAL» | –