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

पोस्टग्रेएसक्यूएल स्कीमा के लिए रेल माइग्रेशन

मेरे पास एक schema_utils लाइब्रेरी है जिसका मैं उपयोग करता हूं और इसमें माइग्रेशन को संभालने के लिए निम्न विधि है:

  def self.with_schema(schema_name, &block)
    conn = ActiveRecord::Base.connection
    old_schema_search_path = conn.schema_search_path
    conn.schema_search_path = schema_name
    begin
      yield
    ensure
      conn.schema_search_path = old_schema_search_path
    end
  end

मैं तब सामान्य रूप से माइग्रेशन का उपयोग करता हूं ताकि मैं rake:migrateNow को कॉल करना जारी रख सकूं, आपके माइग्रेशन में आप इसका उपयोग कर सकते हैं:

...
schemas.each do |schema|
  SchemaUtils.with_schema(schema) do
    #Put migration code here
    #e.g. add_column :xyz, ...
  end
end

क्योंकि मैं स्कीमा को खाता कोड में मैप करने की प्रवृत्ति रखता हूं, मैं निम्नलिखित कार्य करता हूं:

Account.for_each do |account|
  SchemaUtils.with_schema(account.code) do
    #Put migration code here
  end
end


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. सबसे आम PostgreSQL विफलता परिदृश्य

  2. PostGIS का उपयोग करके दिए गए बिंदु के लिए निकटतम पड़ोसियों का पता लगाएं?

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

  4. PostgreSQL ट्रिगर और संग्रहीत कार्य मूल बातें

  5. पोस्टग्रेज़ पढ़ने की पहुँच के लिए CSV फ़ाइल नहीं खोल सकते:अनुमति अस्वीकृत