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

Pgsql में गतिशील रूप से ट्रिगर फ़ंक्शन कैसे बनाएं?

दो $$ खंड भ्रमित हो रहे थे। इसके बजाय आप $name$ सिंटैक्स का उपयोग करके इन्हें अलग कर सकते हैं।

साथ ही ट्रिगर में रिटर्न नहीं था।

CREATE OR REPLACE FUNCTION trigen(tbl text) RETURNS void AS $T1$
BEGIN
    EXECUTE format(
    'CREATE FUNCTION %s_insertCnt() RETURNS TRIGGER AS $T2$
    BEGIN
        UPDATE insertions SET n = n + 1 WHERE tablename = %s;
        RETURN NEW;
    END
    $T2$ LANGUAGE plpgsql', tbl, quote_nullable(tbl));

    EXECUTE format('CREATE TRIGGER %s_inCnt BEFORE INSERT ON %s
    FOR EACH ROW EXECUTE PROCEDURE %s_insertCnt();', tbl, tbl, tbl);
    END
$T1$ LANGUAGE plpgsql;



  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 में पुनरावर्ती JSON कुंजी एकत्र करें

  2. PgAdmin का उपयोग करके Amazon EC2 इंस्टेंस पर दूरस्थ रूप से PostgreSQL से कनेक्ट नहीं हो सकता

  3. Postgresql में SSL कनेक्शन पर होस्टनाम सत्यापित त्रुटि संदेश नहीं है

  4. सक्रिय रिकॉर्ड:JSON क्वेरी

  5. जावा सूची से SQL सरणी कैसे बनाएं?