PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Obtenir une clé primaire inconnue pour la table alors que l'ID est là

Il semble que la clé primaire soit manquante pour les collections de tables.

Avant Rails 3.2 , définissez la clé primaire dans un modèle comme

class Collection < ActiveRecord::Base
  set_primary_key "my_existing_column"
end

Dans Rails 3.2+ et Rails 4 , définissez la clé primaire dans un modèle comme

class Collection < ActiveRecord::Base
  self.primary_key = "my_existing_column"
end

OU

Nous pouvons modifier la table et définir la clé primaire pour l'identifiant comme

Créez un fichier de migration pour définir la clé primaire

class AddPrimaryKeyToCollections < ActiveRecord::Migration
 def change
   execute "ALTER TABLE collections ADD PRIMARY KEY (id);"
 end
end