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

रेल 4 माइग्रेशन में कस्टम प्राथमिक कुंजी सेट करने में समस्याएं

इस उत्तर पर एक नज़र डालें। execute "ALTER TABLE shareholders ADD PRIMARY KEY (uid);" create_table ब्लॉक में प्राथमिक_की पैरामीटर निर्दिष्ट किए बिना।

मेरा सुझाव है कि आप अपना माइग्रेशन इस तरह लिखें (ताकि आप सामान्य रूप से रोलबैक कर सकें):

class CreateShareholders < ActiveRecord::Migration
  def up
    create_table :shareholders, id: false do |t|
      t.integer :uid, limit: 8
      t.string :name
      t.integer :shares

      t.timestamps
    end
    execute "ALTER TABLE shareholders ADD PRIMARY KEY (uid);"
  end

  def down
    drop_table :shareholders
  end
end

यूपीडी: प्राकृतिक तरीका है (यहां पाया गया), लेकिन केवल int4 प्रकार के साथ:

class CreateShareholders < ActiveRecord::Migration
  def change
    create_table :shareholders, id: false do |t|
      t.primary_key :uid
      t.string :name
      t.integer :shares

      t.timestamps
    end    
  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. कठपुतली के साथ बर्मन को स्वचालित करना:it2ndq/barman (भाग दो)

  2. मैं jsonb कॉलम को क्वेरी करने के लिए स्प्रिंग डेटा जेपीए का उपयोग कैसे करूं?

  3. दो अलग-अलग डेटाबेस से परिणाम जोड़ना

  4. Postgresql में बिगिन फ़ील्ड को किसी दिनांक में कैसे प्रारूपित करें?

  5. मास्टर-स्लेव और मास्टर-मास्टर आर्किटेक्चर के साथ पोस्टग्रेएसक्यूएल उच्च उपलब्धता