Re: duplicate entry
Il faudrait avoir un aperçu au moins partiel du modèle de données pour se faire une idée. Un « data truncated » indique une valeur trop longue par rapport à la taille définie de la colonne concernée, et le « duplicate entry » une tentative d'insertion d'une valeur déjà existante dans une colonne possédant un index UNIQUE ou PRIMARY KEY. Si, dans le cas présent, ladite clé primaire est composite, c'est alors que l'association est déjà existante en lien avec d'autres données.
Tout dépend en fait de la façon dont a été modélisée la base. J'ai pour ma part tendance à ne jamais utiliser de valeur « signifiante » comme clé primaire : il y a la possibilité d'utiliser une colonne auto-incrémentée pour ça et je la considère comme une sorte de valeur système. Quant aux clés composites, elles concernent les tables relationnelles dans des relations n:n, elles restent cependant à la base les clés primaires des tables liées pour former comme clés étrangère dans la table relationnelle la clé primaire. Rien n'empêche si nécessaire d'indexer d'autres colonnes comme UNIQUE. On peut par exemple concevoir une table de catalogue de produits avec des numéros de références individuels qui ne peuvent représenter qu'un seul et unique produit, mais même là je ne m'en servirais pas comme clé primaire. Ça évite d'avoir à se casser la tête sur la création d'algorithmes de calcul pour définir la prochaine valeur et ça laisse la porte ouverte à un changement de la structure du numéro de référence produit pour l'entreprise. Cette valeur est une donnée métier, la clé primaire est une donnée système, on doit éviter les conflits possibles, non seulement au moment de la conception mais également sur le long terme.
______________________________________________________________
Une question bien formulée, c'est un problème bien compris : ça représente déjà les 3/4 de la réponse ;)
Subject
Views
Written By
Posted
6616
November 04, 2010 02:43PM
Re: duplicate entry
3063
November 05, 2010 12:46AM
2502
November 05, 2010 06:53AM
2427
November 05, 2010 07:21AM
2730
November 05, 2010 07:43AM
2706
November 05, 2010 07:58AM
2480
November 05, 2010 08:17AM
2609
November 05, 2010 08:23AM
2445
November 08, 2010 10:53AM
2478
November 08, 2010 11:11AM
3109
November 11, 2010 08:32AM
2526
November 11, 2010 08:49AM
2470
November 11, 2010 09:05AM
2376
November 11, 2010 11:12AM
2333
November 11, 2010 01:08PM
2401
November 11, 2010 01:12PM
2458
November 14, 2010 11:06AM
2426
November 14, 2010 12:01PM
2494
November 17, 2010 08:01AM
2774
November 17, 2010 08:41AM
2455
November 21, 2010 10:51AM
2379
November 21, 2010 12:30PM
Sorry, you can't reply to this topic. It has been closed.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion
of Oracle or any other party.