नीचे परिवर्तन देखें, title_crud
पर कॉल करें इसके द्वारा लौटाई जा रही चीज़ों को होल्ड करने के लिए कोई वैरिएबल नहीं है (p_err)
PROCEDURE create_title(
P_TITLE varchar2,
P_USER varchar2,
P_ERR OUT VARCHAR2
)
IS
BEGIN
IF P_TITLE IS NULL THEN
P_ERR := 'Null value';
ELSE
title_crud('I',NULL,P_TITLE,P_USER,P_ERR); -- Extra Parameter
END IF;
END;
PROCEDURE title_crud(
P_OP_TYPE VARCHAR2,
P_ID number,
P_TITLE varchar2,
P_USER varchar2,
P_ERR OUT VARCHAR2
)...
करने के लिए एक आसान गलती है, लेकिन मुझे एक प्रक्रिया को कॉल करते समय बचने में आसान लगता है जिसे आप नामित नोटेशन द्वारा पैरामीटर पास करते हैं। Title_crud पर आपका कॉल बन जाता है
...
title_crud(P_OP_TYPE => 'I',
P_ID => NULL,
P_TITLE => P_TITLE,
P_USER => P_USER,
P_ERR => P_ERR);
...