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

Postgres डेटाबेस में सभी तालिकाओं को छोटा करना

FrustratedWithFormsDesigner सही है, PL/pgSQL ऐसा कर सकता है। ये रही स्क्रिप्ट:

CREATE OR REPLACE FUNCTION truncate_tables(username IN VARCHAR) RETURNS void AS $$
DECLARE
    statements CURSOR FOR
        SELECT tablename FROM pg_tables
        WHERE tableowner = username AND schemaname = 'public';
BEGIN
    FOR stmt IN statements LOOP
        EXECUTE 'TRUNCATE TABLE ' || quote_ident(stmt.tablename) || ' CASCADE;';
    END LOOP;
END;
$$ LANGUAGE plpgsql;

यह एक संग्रहीत कार्य बनाता है (आपको इसे केवल एक बार करने की आवश्यकता है) जिसे आप बाद में इस तरह उपयोग कर सकते हैं:

SELECT truncate_tables('MYUSER');


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgres फ़ंक्शन में स्तंभ नाम के रूप में पैरामीटर का उपयोग करना

  2. BeanCreationException:'flywayInitializer' नाम से बीन बनाने में त्रुटि

  3. सेलेक्ट स्टेटमेंट में डायनामिक कॉलम पोस्टग्रेज करता है

  4. पंक्ति के प्रत्येक स्तंभ के लिए अंतिम ज्ञात मान प्राप्त करें

  5. PostgreSQL और Redshift में सबस्ट्रिंग फ़ंक्शन का उपयोग कैसे करें