[php/SQL] cle primaire en char

Fermé
Rémy - 13 janv. 2007 à 15:30
 Rémy - 14 janv. 2007 à 01:01
Bonjour,

je dois faire la jonction entre deux serveurs... Je ne rentre pas dans les détails.
J'ai un fichier textes contenant les infos. J'en extrais l'essentiel que je mets dans des variabes (php) puis j'insère dans une BdD MySQL. Bref, le soucis :
Ma clé primaire (référence) est un char et a en général la forme suivante : " X XXXX X". De ce fait mon INSERT INTO fonctionne de temps en temps, mais pas toujours :-(

Lorsque je rentre une référence du genre : "XXXXXXXXXXX", pas de problème pour mon INSERT INTO.
Pourtant, celle avec des espaces fonctionne des fois. Je ne pense donc pas que ce soit dû aux espaces.

Comment ça se fait ??
A voir également:

1 réponse

sqwyz Messages postés 26 Date d'inscription lundi 27 novembre 2006 Statut Membre Dernière intervention 31 juillet 2008
13 janv. 2007 à 19:05
bonjour
d'abord, les clé primaires ne devraient pas avoir de formatage particulier. je suppose que puisque c'est le cas, ça veut dire que tes clés primaires sont porteuses d'information ce qui est une erreur.
ensuite si l'insert ne fonctionne pas toujours, c'est peut être parce que la clé primaire que tu essais d'insérer existe déjà.
il se peut aussi que le problème vienne d'ailleurs que de la clé primaire (autres contraintes d'intégrité, type des données insérées, ...).
globalement, je pense que tu devrais renoncer à faire du champs formatté qui semble poser problème une clé primaire et créer une colonne qui ne sert qu'à cela, en laissant la db gérer avec les clés primaires automatiques.
++
0
Oui, je sais que j'aurais sans doute dû construire ma base autrement mais il est trop tard maintenant. Elle fonctionnait très bien depuis sa création (même avec les espaces dans les clés primaires). Mais j'ai modifié quelques trucs dans la réception des données et depuis, ça déconne... Mon problème vient sûrement d'ailleurs, faut que je revois ça. Ca serait trop compliqué à vous expliquer...

Merci tout de même
0