Ajouter une contrainte unique d'une table sql en tant que référence de clé étrangère dans une autre table sql
comment ajouter une contrainte unique d'une table sql en tant que référence de clé étrangère dans une autre table sql dans sql server 2005
OriginalL'auteur subash | 2010-11-19
Afin d'ajouter de la FK contrainte (dans la table enfant à table parent), vous devez ajouter de la contrainte unique à la mère des colonnes de table de relation.
Tout le reste est facultatif ou n'a rien à voir avec FK:
La table parent (dans de tels FK relation) est souvent appelé (y compris par SSMS) comme Clé Primaire de la table mais PK n'est pas faut, clé unique/contrainte dans la table parent est assez (que PK est unique, c'est notamment le cas de la contrainte unique dans la table parent).
Baisse TableA et TableB de réponse de Matt, ce qui est source de confusion pour les débutants,
et les recréer sous forme de
Maintenant, dans l'ordre, pour ajouter FK
vous devez d'abord créer de la contrainte unique sur la correspondante de la colonne référencée dans la table parent colonne:
De la même façon pour les 2 colonnes contrainte de clé étrangère
(tout d'abord, vous avez besoin correspondant de la contrainte unique dans la table parent):
OriginalL'auteur Gennady Vanin Геннадий Ванин
Excuses mais je ne suis pas vraiment sûr de ce que vous demandez ici. Donner plus de un exemple avec le tableau des définitions de l'aide! Je pense vous voulez dire que vous avez deux colonnes dans le TableA à une contrainte unique nommé "Cons2cols", et vous aussi vous voulez ces deux colonnes à un FK à deux colonnes PK /unqiue paire dans la TableB.
Qui fonctionne comme suit, si vous êtes en train de créer les tables à partir de zéro:
Si les tables existent déjà, vous pouvez ajouter dans ces mêmes contraintes après les faits:
De toute façon, TableA a maintenant un unique, 2 colonne FK à une autre table.
OriginalL'auteur Matt
Vous devez garder à l'esprit que l'ajout d'un FK sur une colonne ne permet pas de mettre automatiquement un index sur cette colonne. Vous aurez besoin de faire cela en deux étapes.
Je suis désolé, je ne comprends pas vraiment ce que vous demandez ou de dire.
OriginalL'auteur Randy Minder
Oublier la contrainte unique pour le moment. Il suffit de créer votre nouvelle clé étrangère sur les deux colonnes.
OriginalL'auteur Anthony Faull