मेरा मानना है कि SQL%NOTFOUND
true
लौटाता है जब कोई रिकॉर्ड नहीं मिला। आपका IF
उस मामले में सत्य का मूल्यांकन करेगा, और इसलिए टर्मिनल पर अपना put_line लिखें। SQL कथन सफलतापूर्वक निष्पादित किया गया। यदि आप उस SQL कथन को कमांड लाइन से स्वयं निष्पादित करते हैं, तो आपको 0 पंक्तियाँ अपडेट/डिलीट प्राप्त होंगी, Oracle त्रुटि नहीं।
यदि आप एक अपवाद फेंकना चाहते हैं, तो आप RAISE
. का उपयोग कर सकते हैं आपके IF
. के अंदर और इसे उस अपवाद ब्लॉक में अपवाद की ओर इंगित करें जिसे आप फेंकना चाहते हैं।