Violation du clé [Résolu]

ayadi001 42 Messages postés dimanche 12 juin 2011Date d'inscription 19 octobre 2011 Dernière intervention - 29 août 2011 à 11:01 - Dernière réponse : ayadi001 42 Messages postés dimanche 12 juin 2011Date d'inscription 19 octobre 2011 Dernière intervention
- 28 sept. 2011 à 15:10
Bonjour,
j'ai une application de base de donnée, sous Delphi avec les tables Paradox,
comment faire pour régler le problème de violation de clé;

Merci pour votre aide .
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 29 août 2011 à 15:03
3
Merci
et pour y pallier,
on crée un champ auto-incrémental et dans ce cas , on aura :

- 100 toto
- 101 tata

et là, ça marche, car les enregistrements sont bien différenciés.

il y a d'autres possibilités, mais c'est l'heure de la soupe...


cantador

Merci cs_cantador 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 104 internautes ce mois-ci

Commenter la réponse de cs_cantador
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 29 août 2011 à 14:55
0
Merci
Bonjour,

une violation de clé se produit lorsque l'on tente d'ajouter un élément déjà en place dans une table.

Je suppose qu'ici, il doit s'agir d'un cas de violation de clé primaire.

autrement dit, tu tentes de créer un numéro d'enregistrement déjà
existant :

exemple de cas impossible à saisir :

clé primaire
unique Nom
100 toto
100 tata


"violation de clé !"

cantador
Commenter la réponse de cs_cantador
ayadi001 42 Messages postés dimanche 12 juin 2011Date d'inscription 19 octobre 2011 Dernière intervention - 29 août 2011 à 16:10
0
Merci
Bonsoir,
après la soupe n'oublier pas de m'écrire les autres possibilités.

bon appété .
Commenter la réponse de ayadi001
cs_Delphiprog 4580 Messages postés samedi 19 janvier 2002Date d'inscription 9 janvier 2013 Dernière intervention - 7 sept. 2011 à 23:43
0
Merci
'soir,

Peux-tu nous communiquer la description de la table qui pose problème en précisant le ou les champs qui composent la clé primaire ? Éventuellement si tel est le cas, merci de nous préciser aussi les index déclarés uniques.

Un échantillon des données contenues serait un plus apprécié.

May Delphi be with you

Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
Commenter la réponse de cs_Delphiprog
ayadi001 42 Messages postés dimanche 12 juin 2011Date d'inscription 19 octobre 2011 Dernière intervention - 27 sept. 2011 à 12:56
0
Merci
Bonjour Delphiprog,
l'explication de problème est comme il dis cantador, mais il n'a pas donner la deuxième solution !!!
Commenter la réponse de ayadi001
cs_cantador 4996 Messages postés dimanche 26 février 2006Date d'inscription 27 mars 2018 Dernière intervention - 28 sept. 2011 à 14:02
0
Merci
@ayadi001:
il y a d'autres possibilités
on peut aussi créer des clés composite (association de plusieurs champs) à manipuler avec précaution car elles ne sont plus atomiques.

Une discussion sur les clés primaires, étrangères et index nous entraînerait trop loin et dépasserait le cadre de ce forum.

Je te dirai simplement un règle de bons sens :
il faut savoir si dans ta base de données les tables sont plus sollicitées en lecture ou plus en écriture.

si c'est en écriture, alors il faut créer des tables avec clés et index solides.
Dans la négative, tu peux être moins strict sur les règles
de normalisation.

l'objectif étant de toujours conserver de bonnes performances.

cantador
Commenter la réponse de cs_cantador
ayadi001 42 Messages postés dimanche 12 juin 2011Date d'inscription 19 octobre 2011 Dernière intervention - 28 sept. 2011 à 15:10
0
Merci
Merci cantador
Commenter la réponse de ayadi001

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.