Je travaille donc sur un code MVC avec plusieurs tables SQL. Le premier contient des informations de base pour une personne {UID,FNAME,LNAME,DOB,GENDER}
et les autres contiennent des données telles que {BOOL1,BOOL2,BOOL3}
. J'utilise des tables différentes car certaines données peuvent ne pas être mises à jour aussi fréquemment que d'autres, et je souhaite que ces données soient séparées. Est-il acceptable d'utiliser le PK de la première table comme PK des autres? Et comment pourrais-je accomplir cela sans le problème de l'insertion d'une identité?Utiliser PK d'une table comme PK pour un autre
0
A
Répondre
1
Cela dépend du scénario -
- Une table est le maître et l'autre table est un type de la première: dans ce cas, la première table PK est FK pour le second. vous pouvez toujours rendre ce champ unique et l'utiliser également pour l'index clusterisé si cela a du sens.
- Deux tables ont différents types d'objets mais doivent utiliser un ID exclusif partagé: dans ce cas, vous pouvez utiliser une séquence pour Id pour les rendre uniques.
Oui, les deux tables sont des types de données différents. Comment pourrais-je faire une séquence pour l'identifiant? –
Regardez ici - http://stackoverflow.com/questions/10991894/auto-increment-primary-key-in-sql-server-management-studio-2012 –
Ok, une valeur auto-incrémentée. Comment pourrais-je m'assurer que les ID des deux tables étaient les mêmes? Créez-les en même temps, puis enregistrez les modifications dans la base de données à la fois? –