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

पोस्टग्रेज:यदि यह पहले से मौजूद नहीं है तो बाधा जोड़ें

एक संभावित समाधान यह है कि नई बाधा उत्पन्न करने से पहले केवल DROP IF EXISTS का उपयोग करें।

ALTER TABLE foo DROP CONSTRAINT IF EXISTS bar;
ALTER TABLE foo ADD CONSTRAINT bar ...;

जानकारी_स्कीमा या कैटलॉग को क्वेरी करने की कोशिश करने की तुलना में आसान लगता है, लेकिन विशाल टेबल पर धीमा हो सकता है क्योंकि यह हमेशा बाधा को फिर से बनाता है।

संपादित करें 2015-07-13:केव ने अपने जवाब में बताया कि मेरा समाधान एक छोटी खिड़की बनाता है जब बाधा मौजूद नहीं होती है और इसे लागू नहीं किया जा रहा है। हालांकि यह सच है, आप लेन-देन में दोनों बयानों को लपेटकर ऐसी खिड़की से आसानी से बच सकते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. pgDash डायग्नोस्टिक्स विकल्प - क्लस्टरकंट्रोल के साथ PostgreSQL क्वेरी प्रबंधन

  2. PostgreSQL कनेक्शन स्ट्रिंग/यूआरएल के लिए प्रारूप क्या है?

  3. PostgreSQL का उपयोग करके मूडल के लिए अत्यधिक उपलब्ध डेटाबेस बनाना

  4. PostgreSQL के लिए Percona वितरण की निगरानी - प्रमुख मेट्रिक्स

  5. Django और postgresql स्कीमा