त्रुटि होने से पहले आपको एरर कंडीशन हैंडलिंग घोषित करने की आवश्यकता है:
Whenever sqlerror exit sql.sqlcode;
DROP user MYUSER cascade;
EXIT 0;
आप स्क्रिप्ट में अलग-अलग बिंदु पर हैंडलिंग बदल सकते हैं। उदाहरण के लिए, आप ड्रॉप पर एक त्रुटि को अनदेखा करके, बनाने से पहले एक सुरक्षात्मक ड्रॉप कर सकते हैं, लेकिन अगला चरण विफल होने पर भी रोक सकते हैं:
whenever sqlerror continue
drop ...
whenever sqlerror exit failure
create...
alter...
etc
संयोग से, यूनिक्स-भूमि में यह दृष्टिकोण सीमित है क्योंकि अधिकांश (सभी?) गोले में सीमित रिटर्न कोड होता है, और उच्च संख्याएं चारों ओर लपेटती हैं; इसलिए ORA-0918 को 126 के रूप में रिपोर्ट किया जाएगा, जिससे व्याख्या करना असंभव हो जाएगा। इससे भी महत्वपूर्ण बात यह है कि कुछ मान शून्य हो जाएंगे, जिससे ऐसा लगेगा कि कोई त्रुटि नहीं हुई है। सौभाग्य से आपको %errorlevel% के साथ वह समस्या नहीं है।