PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Dodawanie klucza obcego do modelu rails

Obecnie akceptowana odpowiedź na to nie jest naprawdę dokładna, ponieważ nie dodaje klucza obcego bazy danych. To tylko dodawanie kolumn liczb całkowitych.

W Rails 4.2.x , obecne podejście to:

http://guides.rubyonrails.org/active_record_migrations.html#foreign-keys

Utwórz migrację:

rails generate migration migration_name

Dla istniejących kolumn , podczas migracji dodaj klucze obce w następujący sposób:

class MigrationName < ActiveRecord::Migration
  def change
    add_foreign_key :business_hours, :businesses
    add_foreign_key :businesses, :users
  end
end

Dla szyny 4.x lub jeśli dodajesz nową kolumnę i chcesz, aby był to klucz obcy, możesz to zrobić, gdzie prawdopodobnie chcesz również określić indeks jako prawdziwy, ale nie jest to częścią wymogu dla klucza obcego:

http://edgeguides.rubyonrails.org/active_record_migrations.html#creating-a-migration

class MigrationName < ActiveRecord::Migration
  def change
    add_reference :business_hours, :business, index: true, foreign_key: true
    add_reference :businesses, :user, index: true, foreign_key: true
  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 utwórz tabelę, jeśli nie istnieje

  2. Czy można określić schemat podczas łączenia się z postgresem za pomocą JDBC?

  3. Jak się dowiedzieć, która partycja będzie używana w partycjonowaniu mieszającym Postgresa?

  4. Idź postgresql LIKE zapytania

  5. Obliczanie wartości procentowych za pomocą zapytania GROUP BY