यह स्क्रिप्ट उन सभी को छोड़ने के लिए DDL कमांड जनरेट करेगी:
SELECT 'DROP TABLE ' || t.oid::regclass || ';'
FROM pg_class t
-- JOIN pg_namespace n ON n.oid = t.relnamespace -- to select by schema
WHERE t.relkind = 'r'
AND t.relname ~~ E'doors\_%' -- enter search term for table here
-- AND n.nspname ~~ '%myschema%' -- optionally select by schema(s), too
ORDER BY 1;
कास्ट t.oid::regclass
सिंटैक्स मिश्रित केस आइडेंटिफ़ायर, आरक्षित शब्दों या तालिका नामों में विशेष वर्णों के लिए भी काम करता है। यह SQL इंजेक्शन को भी रोकता है और जहां आवश्यक हो वहां स्कीमा नाम तैयार करता है। मैन्युअल में ऑब्जेक्ट पहचानकर्ता प्रकारों
के बारे में अधिक जानकारी ।
आप ड्रॉपिंग को भी स्वचालित कर सकते हैं, लेकिन यह मूर्खतापूर्ण है ऐसा करने से पहले यह जांचने के लिए नहीं कि आप वास्तव में क्या हटाते हैं।
आप CASCADE
जोड़ सकते हैं
वस्तुओं के आधार पर DROP के प्रत्येक कथन के लिए (विदेशी कुंजियों को देखना और संदर्भित करना)। लेकिन, फिर से, यह मूर्खतापूर्ण है जब तक आप अच्छी तरह से नहीं जानते कि आप क्या कर रहे हैं। विदेशी प्रमुख बाधाएं कोई बड़ी हानि नहीं हैं, लेकिन यह सभी आश्रित विचारों को भी पूरी तरह से छोड़ देगी। बिना CASCADE
आपको त्रुटि संदेश मिलते हैं जो आपको सूचित करते हैं कि कौन सी वस्तुएं आपको तालिका छोड़ने से रोकती हैं। और फिर आप इससे निपट सकते हैं।