[php/SQL] cle primaire en char

Rémy -  
 Rémy -
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 Statut Membre
 
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
Rémy
 
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