आदर्श रूप से हमें स्रोत नियंत्रण और कॉन्फ़िगरेशन प्रबंधन सर्वोत्तम प्रथाओं का उपयोग करते हुए अपनी स्कीमा को ठीक से बनाए रखना चाहिए। इस परिदृश्य में हम पहले से जानते हैं कि जिस स्कीमा के खिलाफ हम अपनी स्क्रिप्ट चलाते हैं, उसमें वे टेबल हैं। हमें त्रुटियां नहीं मिलती हैं क्योंकि हम उन तालिकाओं को छोड़ने का प्रयास नहीं करते हैं जो मौजूद नहीं हैं।
हालांकि ऐसा करना हमेशा संभव नहीं होता है। एक वैकल्पिक तरीका दो लिपियों का होना है। पहली स्क्रिप्ट में केवल DROP TABLE स्टेटमेंट होते हैं, जो एक फ्रेंडली के साथ होते हैं
PROMPT It is safe to ignore any ORA-00942 errors in the following statements
दूसरी स्क्रिप्ट में सभी CREATE TABLE स्टेटमेंट हैं और इसके साथ आगे बढ़ता है
PROMPT All the statements in this script should succeed. So investigate any errors
एक अन्य विकल्प डेटा डिक्शनरी का उपयोग करना है:
begin
for r in ( select table_name from user_tables )
loop
execute immediate 'drop table '||r.table_name
||' cascade constraints';
end loop;
end;
इससे सावधान रहें। यह परमाणु विकल्प है और आपके स्कीमा में प्रत्येक तालिका को छोड़ देगा।