begin process at 2012 05 26 12:09:06
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive SQL

 > 

Archives

 > 

Besoin d'aide pour ma base de données

 > 

Clé primaire , clé étrangère


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Clé primaire , clé étrangère

mercredi 7 décembre 2005 à 11:16:28 | Clé primaire , clé étrangère

emmanuel9

Bonjour à tous,

"Aieuuuuuuu" m'a dit hier que une table n'avais pas besoin de contenir une clée primaire J'ai oublier de lui demander  :

Si ma table contient deux clée etrangère dont l'association des deux est uniques est ce que c'est bon ? ou bien si ma table ne contient rien d'unique est ce que c'est bon quand même ?

Par avance, merci..

mercredi 7 décembre 2005 à 11:27:59 | Re : Clé primaire , clé étrangère

aieeeuuuuu

Réponse acceptée !

re,

les clef primaires et etrangere ne sont en aucun cas obligatoires.

elles te servent juste a assurer l'integrité de tes données
exemple :
dans une table qui contient des clients, tu vas par exemple mettre une clef primaire sur le numéro de client, pour etre sur de ne jamais avoir deux clients ayant le meme numéro (après une manip a la main dans la base, ou un programme qui fonctionne mal)
avec la clef primaire, l'ajout ne pourra pas avoir lieu et provoquera une erreur. Ca te permet aussi de pouvoir identifier de facon unique chacun de tes clients.

de meme pour la clef etrangere.
dans une table qui contient les commande, tu va rattacher chaque commande a un client. tu va donc définir une clef etrangere sur le champs qui contient le numero de client correspondant a la commande, afin de t'assurer que ce numero existe bien dans la table des clients. ainsi tu ne pourra pas ajouter une commande qui ne correspond a aucun client, et tu ne pourra pas non plus supprimer un client qui a une commande. ainsi tu sera sur de n'avoir jamais de commande qui ne sont rattachées a aucun client.

c'est donc a toi de voir en fonction des données que tu veux stocker les clefs primaires et etrangeres qu'il te faut.

si je me souviens bien de ton cas, tu rattchais des perosnnes a des groupes.

il faut donc mettre des clefs etrangere pour t'assurer que chaque personne existe bien dans la table personne. idem pour que les groupes existent bien.
par contre pour ce qui est de la clef primaire, je ne sais pas si elle est tres utile, mais elle pourra, si tu la crée sur les deux champs, t'eviter d'avoir une personne ratachée deux fois au meme groupe. la c'est a toi de voir en fonction de la facon dont tu veux gerer tes données.

j'espere que c'est a peu pres clair ?!?

mercredi 7 décembre 2005 à 11:52:13 | Re : Clé primaire , clé étrangère

emmanuel9

Merci de cette réponse si complète,oui c'est très clair, c'est pas une obligation mais ca sert pour l'integrité des données afin que la base ne finisse pas pas devenir n'importe quoi à terme.


Cette discussion est classée dans : table, clé, primaire, clée, étrangère


Répondre à ce message

Sujets en rapport avec ce message

AIDE SVP !! URGENT [ par layaydakhaled ] Layayda Khaledj'ai un projet a faire,la soutenance est la semaine prochaine,il me faut au moin 10 trigger a faire....voici le schéma relationnel..merc update table à 2 clé primaire [ par adnanester ] salutvoila , j'ai une table à deux clé primaire, et pour mettre a jour une ligne de cette table je fait le requete suivante a partir de l'analyseur de Jointure [ par issoux ] Bonjour voilà mon problemej'ai 3 tables  : table role :id (clé primaire)nomtable UserRoleid,( clé primaire )RoleId ( clé etrangere de role) définition d'une clé étrangère [ par gillespockpock ] Bonjour, j'ai une question qui m'obstine, je suis en train de développer une application de création de bases de données,je ne trouve nul par de répon SqlServer, débutant, problème de clé étrangère. [ par xaeris ] Bonjour a tous !!Je crée actuellement une base de données sous SqlServer 2005 Express.Je suis confronté a un petit soucis, du a mon manque de connaiss Ajout d'une clé primaire avec des doublons [ par jourdanne85 ] Bonjour à tous, Voilà mon problème. Je dois récupérer une table DM_CONSULTATION_PLAINTE (SQL Server Express). Cette table représente en fait les plai SELECT sur une table avec clé étrangère en boucle sur une table [ par Sieurcoug ] Bonjour,Je vous expose mon souci qui va vous paraître simple (vu mon niveau en SQL ;)) :Voilà, j'ai besoin de lister les enregistrements de la table S Trigger beforedelete vs delete rule de clef étrangère [ par vincentstryckmans ] Bonjour,Quelle est la meilleure solution pour effacer les record d'une table enfant lorsqu'un record de la table parent est effacé :1. Avoir une clef pitié aidez moi avan ce soir! SQL-ACCESS/UPDATE [ par tchoukette ] J'ai un gros problème pour une requete UPDATEJ'exporte une table B dans ma base de données.Ma table met à jour ma table AIl s'agit de produits composé Jointure table clé composé [ par didygwatinik ] Bonjour, Je me pose une question quand je veux faire une jointure, est-il préférable de la faire sur la clé primaire de la table ?Si j'ai une table av


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,640 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales