Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

त्रुटि के मामले में पीएल/एसक्यूएल में लाइन नंबर, प्रक्रिया का नाम कैसे पता करें

बहुत शोध, सिर पीटने और दांत पीसने के बाद मुझे यह पैटर्न मिला है:

CREATE OR REPLACE PACKAGE BODY my_schema.package_name
IS

  PROCEDURE foo
  IS
  BEGIN
    -- Call stored procedures/functions that throw unhandled exceptions
  EXCEPTION
    WHEN OTHERS THEN
      DBMS_OUTPUT.PUT_LINE('ERROR! - '
        || DBMS_UTILITY.FORMAT_ERROR_STACK
        || DBMS_UTILITY.FORMAT_ERROR_BACKTRACE);
  END foo;

END;

DBMS_UTILITY.FORMAT_ERROR_STACK ऐसा लगता है कि फ़ंक्शन त्रुटि कोड और संदेश देता है, और DBMS_UTILITY.FORMAT_ERROR_BACKTRACE कम से कम Oracle 10g में लाइन नंबरों और संग्रहीत कार्यविधि नामों के साथ, अच्छाई के लिए एक ईमानदार स्टैक ट्रेस देना प्रतीत होता है।

मुझे यकीन नहीं है कि वे कार्य Oracle 9i में उपलब्ध हैं। मुझे Oracle 10g के लिए भी इस तरह की चीज़ों के बारे में अधिक जानकारी नहीं मिली, इसलिए मैंने सोचा कि मैं कम से कम इस उत्तर को पोस्ट करूँगा क्योंकि 9i काफी पुराना है (और इसलिए उस मामले के लिए यह 10g है)।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle में नंबर कैसे फ़ॉर्मेट करें

  2. Oracle - मैं किस TNS नाम फ़ाइल का उपयोग कर रहा हूँ?

  3. सर्वश्रेष्ठ उपयोगकर्ता भूमिका अनुमतियाँ डेटाबेस डिज़ाइन अभ्यास?

  4. Oracle में पैकेज के अंदर एक प्रक्रिया कैसे निष्पादित करें?

  5. oracle 12.1 . में JSON कॉलम को कैसे अपडेट करें