Bonjour
J'ai un problème de clef en utilisant une base de données ADO avec Delphi 2006.
voir fichier joint:
Merci à tous ceux qui m'aideront.![]()
Bonjour
J'ai un problème de clef en utilisant une base de données ADO avec Delphi 2006.
voir fichier joint:
Merci à tous ceux qui m'aideront.![]()
J'utilise une base de données access .mdb. Je me connecte à celle-ci par ADOconnect.
J'ai déjà beaucoup utilisé ce type de connection en régle générale je n'ai pas de problème.
Mais de temps en temps j'ai ce problème de clef qui apparait, je ne sais pas pourquoi.
comment faut-il déclarer les tables access? a quoi sert les clefs?
doit-on déclarer des champs clefs?
Merci à tous ceux qui auront une réponse.
Une clé "primaire" (en général) désigne un ou plusieurs champs dans une table devant servir clef unique. C'est à dire que chaque enregistrement peut être identifié de manière unique grâce à cette clé. En général il s'agît juste d'un champ de type entier auto-incrémenté néanmoins cela peut être n'importe quoi (un champ comme plusieurs), la condition étant que chaque enregistrement possède une clé unique (et le SGBD vérifie cette unicité !).
salut et merci pour la réponse
la clef est-elle indispensable ou un plus pour une ADOconnection.
Dans mon cas mon probleme viendrai d'où?
Salut
J'ai trouvé mon probleme.
Par erreur je remplissais 2 fois ma table avec les memes données.
Donc je me retrouvais avec tous en double.
Je pense que le compilateur n'etait pas d'accords.
Ben c'est une règle quasiment tacite de toujours avoir une clé primaire dans une table en terme de construction de base de donnée donc...
Une clé primaire permet donc d'identifier de façon unique un enregistrement particulier, ce qui est particulièrement utile pour les modifications ou les suppressions. J'imagines qu'en utilisant des composants qui gèrent ces requêtes comme les ADOTable, l'utilisation d'une clé primaire lui est indispensable pour pouvoir retrouver ses petits, sinon il se peut qu'il y ait des enregistrements en double dans ta table et que lorsque tu modifie l'un d'eux il détecte que tu touches à plusieurs à la fois et génère une exception.
Ce n'est qu'une hypothèse bien sûr.
Salut
Je vais prendre l'habitude de mettre des clefs. Car l'idée d'avoir plusieurs enregistrements identiques ne m'interesse pas.
Merci pour la précision.
Partager