Vous n'êtes pas identifié(e).
Pages :: 1
Bonjour à tous,
je me tourne vers vous car j'administre un site de e-commerce (type creload) et mon responsable utilise un logiciel de gestion nommé 8sens
aujourd'hui je dois faire un export des stocks du logiciel vers la base de donnée du site afin qu'on soit à jours en permanence sur les stocks
j'ai donc un fichier d'export en .txt de ce type :
et je dois faire un update vers ma base de données à partir de ça du genre :
update `mabase`.`quantité produit` set `quantité_produit` = `ArtStk` where "id_produit" = "ArtCode"
mais j'avoue que je ne vois pas trop comment faire pour le coup sachant que mon fichier est composé de plusieurs centaines de lignes
les champs sont séparés par des tabulations et j'aimerais que le système soit automatique, que je puisse uploader le fichier texte et que ça se fasse tout seul
si quelqu'un a une idée je suis preneur
d'avance merci
Hors ligne
ton fichier texte est tabuler ?
sinon, avec fopen et fread, tu devrais pouvoir régler ton problème
a++
Hors ligne
Saluton,
Pour que tout se fasse en automatique en SQL, il faudrait créer une table temporaire que tu chargerais par LOAD DATA avec les données du fichier txt.
Ensuite un UPDATE de la table en la mettant en jointure avec la table temporaire ne devrait pas être trop compliqué à gérer.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
oui ce sont des tabulations
l'extrait de texte que j'ai mis est le résultat obtenu après l'export du logiciel 8 sens
Hors ligne
merci pour la solution Maljuna Kris
j'ai testé mais je ne comprends pas pourquoi il ne met pas tout à jour
j'ai 825 lignes dans ma table temporaire, et il n'en prend que 525, il y a t'il une limite dans mysql ?
à moins qu'il ne fasse la mise à jour que si les valeurs sont différentes peut être
Hors ligne
j'ai testé mais je ne comprends pas pourquoi il ne met pas tout à jour
j'ai 825 lignes dans ma table temporaire, et il n'en prend que 525, il y a t'il une limite dans mysql ?
à moins qu'il ne fasse la mise à jour que si les valeurs sont différentes peut être
Difficile de te répondre sans plus ample information.
Si tu fais une jointure entre ta table temporaire et la table de base de données et que tu fais un COUNT(*) tu obtiens 825 ?
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Après de nombreuses recherches j'ai finalement trouvé la raison de ce problème
je m'explique :
dans ma base de données les codes articles sont limités à 25 caractères, et dans mon logiciel de gestion certains codes articles dépassent ce nombre, donc forcément au moment de l'UPDATE, certains articles ne sont pas trouvés ce qui explique le nombre de données non mises à jour.
maintenant je n'ai plus qu'à trouver un script qui automatise tout ça car mine de rien c'est long tous les matins de faire ces manipulations, si vous avez des exemples je suis preneur
en tout cas merci pour vos réponses
Hors ligne
Pages :: 1