Dans ces exercices , nous allons explorer l'utilisation de champs de clé de numéro de série pour relier des tables de données , et la création de relations entre les tables secondaires pour améliorer notre capacité à stocker et traiter des multiples et prolongées entrées de données . Numéro de série clés Champs
La façon la plus simple de créer une relation de base est d'utiliser les champs de clé de numéro de série , où un numéro unique est attribué à chaque enregistrement d'une table donnée. Par exemple , nous allons créer un carnet d'adresses avec des relations multiples , permettant de multiples entrées dans le dossier de chaque personne
tableau 1, People : . Cette fiche 1 : ( ID utilisateur: 1, nom : " Jane Doe" ) fiche 2 : ( UserID : 2 Nom : « Joseph Brown" )
tableau 2, Email : Record 1: ( ID utilisateur: 1 , Courriel: " jdoe@ourcompany.com " ) fiche 2: ( ID utilisateur: 2, Email: " brown@anothercompany.com " ) fiche 3: ( ID utilisateur: 2 , Courriel: " joe@joeshobbysite.org " )
tableau 3, Téléphone : Record 1: ( ID utilisateur: 2, Tél : " 202-555-8213 »)
la relation est créé en utilisant le champ de clé ID utilisateur , qui concerne l' identification de l'utilisateur dans le tableau 1 avec l'ID utilisateur dans les tableaux 2 et 3. L' e-mail et tables Phone , cependant, n'ont pas de relations entre eux qui ne se connecte de nouveau à UserID , donc nous n'avons pas besoin de leur attribuer des numéros d'identification uniques. Pour récupérer des informations complètes , votre rapport ou un script de base de données (également appelé «méthode» ) seraient traverser ces relations : à partir avec les gens Name Record , il faudrait d'abord récupérer tous les numéros de téléphone avec le même ID , puis toutes les adresses e-mail avec qui ID utilisateur et le format pour l'affichage ou l'impression
il est important de noter que les noms d'utilisateurs dans la table primaire doivent être uniques ; . qu'il est acceptable d' ignorer chiffres ( généralement , cela se produit lorsque les enregistrements sont supprimés ), mais le même nombre ne peut jamais être utilisé deux fois . Dans les tableaux secondaires , cependant, vous pouvez utiliser cet identifiant primaire autant de fois que vous avez besoin de créer plusieurs dossiers; Joseph Brown a deux adresses e-mail , donc il a deux entrées de la table E-mail avec son ID utilisateur
.
secondaire Key Champ relations
souvent, vous aurez envie de créer une deuxième série de rapports , en plus de la première . Si vous souhaitez mémoriser, à chaque adresse e-mail, une série d'instructions concernant la façon dont cette adresse email doit être utilisé : à savoir , HTML contre emails en texte brut , et une étiquette de travail ou à domicile. Vous pouvez le faire avec une base de données de fichier plat en ajoutant plus de champs pour chaque enregistrement, mais qui peut causer la conception de base de données inefficace lorsque la table grossit . Utilisez une relation de clé secondaire au lieu
tableau 2 , Courriel: . Fiche 1: ( EmailID : 1, ID utilisateur: 1 , Courriel: " jdoe@ourcompany.com " ) Fiche 2: ( EmailID : 2, ID utilisateur: 2 , Courriel: " brown@anothercompany.com " ) fiche 3: ( EmailID : 3, identification de l'utilisateur : 2, Email: " joe@joeshobbysite.org " )
tableau 4, EmailInstructions : Record 1: ( EmailID : 1 , Type: "HTML" , Kind : «travail») fiche 2: ( EmailID : 2 , Type: "plaine" , Kind : «travail») fiche 3: ( EmailID : 3 type: "plaine" , Kind : . "home" )
Avec une table secondaire , vous pouvez stocker des données arbitraires pour chaque enregistrement , tout en conservant une efficacité maximale pour les récupérations de la table initiale qui n'a pas besoin des données secondaires