में एक प्रक्रिया में जैसा पकड़ने, मैं कोई प्रभाव नहीं पड़ेगा अगर यह विफल रहता है, पर अमल तर्क इकाई 2कोशिश एक्सेप्शन हैंडलिंग PL/SQL
इस एक ठेठ कोशिश पकड़ परिदृश्य की तरह लगता है तर्क इकाई 1 क्या करना चाहते हैं,। लेकिन मैं इसे pl/sql में कैसे कर सकता हूं?
create or replace
PACKAGE BUILD_PKG
AS
PROCEDURE reset_seq_and_truncate_tbl(
p_seq_name IN VARCHAR2,
p_table_name IN VARCHAR2);
END BUILD_PKG;
/
create or replace
PACKAGE BODY BUILD_PKG
AS
BEGIN
PROCEDURE reset_seq_and_truncate_tbl(
p_seq_name IN VARCHAR2,
p_table_name IN VARCHAR2)
IS
l_val NUMBER;
BEGIN
BEGIN
EXECUTE immediate 'truncate table ' || p_table_name;
EXCEPTION
WHEN OTHERS
THEN dbms_output.put_line(SQLCODE);
END;
BEGIN
EXECUTE immediate 'alter sequence ' || p_seq_name || ' increment by 1 minvalue 0';
EXCEPTION
WHEN OTHERS
THEN dbms_output.put_line(SQLCODE);
END;
END reset_seq_and_truncate_tbl;
END BUILD_PKG;
जैसा कि आप दूसरे अपवाद ब्लॉक को समस्या का कारण देख सकते हैं।
मेरे उत्तर के लिए लगभग सटीक। मैं अपना मिटा दूंगा। –
क्षमा करें, मुझे इसे और स्पष्ट करना चाहिए था। तर्क 1 निष्पादित करें, इससे कोई फर्क नहीं पड़ता कि यह विफल रहता है, तर्क 2 निष्पादित करें –
दूसरे दृष्टिकोण पर एक नज़र डालें –