update mysql
6 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
update mysql
Bonjour à tous!
Une petite présentation pour commencer: j'ai 39 ans, marié et 2 enfants; je suis pour ainsi dire novice en developpement php/mysql, mais je voudrais apprendre!...
J'ai un site e-commerce et aimerai mettre les mains dans le cambouis pour ne pas dépendre que de mon prestataire.
Voici mon 1er obstacle donc une 1ere question:
Je voudrais faire une mise à jour hors taxe de la colonne (prix_achat) d'une table (bon_de_commande); j'ai donc fait une requete:
UPDATE bon_de_commande
SET prix_achat = prix_achat/1.196
Pour les valeurs uniques, ça marche, mais il existe (lorsque la commande comporte plusieurs articles, une chaine avec un séparateur $ (exemple: 2.00$15.22$3.50): là je suis bloqué parce que le résultat n'est pas du tout le bon.
Est-ce-que quelqu'un peut m'éclairer et m'indiquer la bonne requete svp?
merci
Une petite présentation pour commencer: j'ai 39 ans, marié et 2 enfants; je suis pour ainsi dire novice en developpement php/mysql, mais je voudrais apprendre!...
J'ai un site e-commerce et aimerai mettre les mains dans le cambouis pour ne pas dépendre que de mon prestataire.
Voici mon 1er obstacle donc une 1ere question:
Je voudrais faire une mise à jour hors taxe de la colonne (prix_achat) d'une table (bon_de_commande); j'ai donc fait une requete:
UPDATE bon_de_commande
SET prix_achat = prix_achat/1.196
Pour les valeurs uniques, ça marche, mais il existe (lorsque la commande comporte plusieurs articles, une chaine avec un séparateur $ (exemple: 2.00$15.22$3.50): là je suis bloqué parce que le résultat n'est pas du tout le bon.
Est-ce-que quelqu'un peut m'éclairer et m'indiquer la bonne requete svp?
merci
Tu ne pourra pas (sauf inconnue de ma part) faire ce genre de travail avec du SQL seulement.
Ton champ de base de données n'étant pas composées de données numériques dans chaque cas.
Si je ne me trompe pas tu devra extraire chaque champ y appliquer le traitement nécessaire et updater la base. Il va te falloir passer par php dans un tel cas.
Ton champ de base de données n'étant pas composées de données numériques dans chaque cas.
Si je ne me trompe pas tu devra extraire chaque champ y appliquer le traitement nécessaire et updater la base. Il va te falloir passer par php dans un tel cas.
Je pense comme zeb, par contre stocker tous les articles d'une commande dans un champ est plutot moyen au niveau de la structure de ta base.
Normalement tu devrais avoir une ligne par article et dans chaque ligne le numéro de commande correspondant (la clé étrangère), dans deux tables séprées. Ca ferait une table de commandes, une table d'articles et une table associant les articles aux commandes.
Normalement tu devrais avoir une ligne par article et dans chaque ligne le numéro de commande correspondant (la clé étrangère), dans deux tables séprées. Ca ferait une table de commandes, une table d'articles et une table associant les articles aux commandes.
Oui une des premières règles qu'on apprend en conception de base de données est qu'un champ représente une valeur atomique.
Enfin bref...
Donc oui dans ton cas il faudra extraire ces champs là.
Même si une solution existe en SQL pur, elle doit être assez tordue.
Le plus simple est effectivement d'extraire le champ:
1/ tu sélectionne tous les enregistrements
2/ tu les passe un par un
3/ si le champ contient un symbole dollar, alors tu extrait chaque valeur numérique (fonction "explode" en PHP par exemple), tu les traites un par un et tu les remet avec la fonction invserse
Enfin bref...
Donc oui dans ton cas il faudra extraire ces champs là.
Même si une solution existe en SQL pur, elle doit être assez tordue.
Le plus simple est effectivement d'extraire le champ:
1/ tu sélectionne tous les enregistrements
2/ tu les passe un par un
3/ si le champ contient un symbole dollar, alors tu extrait chaque valeur numérique (fonction "explode" en PHP par exemple), tu les traites un par un et tu les remet avec la fonction invserse
wouah: merci de vos nombreuses réponses!!!
effectivement, en attendant vos réponses, j'ai cherché un peu sur le net et comme vous le dites si bien, il semble bien plus judicieux de passer par php et la fonction "explode" .
J'aimerai donc exécuter cette requete au travers d'un fichier php: mais je ne sais pas trop comment faire
quelqu'un peut-il me mettre sur la voie avec un début de morceau de code? (extraire les données sous forme de table, c'est bon, ça au moins je sais, mais c'est après que ça se corse...)
effectivement, en attendant vos réponses, j'ai cherché un peu sur le net et comme vous le dites si bien, il semble bien plus judicieux de passer par php et la fonction "explode" .
je l'apprends malheusement à mes dépends et bien trop tard: mon prestataire l'a conçu comme ça...une des premières règles qu'on apprend en conception de base de données est qu'un champ représente une valeur atomique...
J'aimerai donc exécuter cette requete au travers d'un fichier php: mais je ne sais pas trop comment faire
quelqu'un peut-il me mettre sur la voie avec un début de morceau de code? (extraire les données sous forme de table, c'est bon, ça au moins je sais, mais c'est après que ça se corse...)
6 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Passage à l'heure d'été/hiver sur un forum phpBB
- Google Update Jagger : étape 2 sur 3
- Historique des "Google Update"
- Des changements dans l'algorithme de Google ? (22 février 2007)
- Gestion des langues et des sessions en PHP / MySQL
- La mise à jour du mois de juillet arrive...
- La Google Dance Gilligan n'en était pas une
- API Blogger : Google Data API
- Google Dance : c'est parti ! Update de juillet 2002
- La mise à jour BigDaddy se poursuit...
- Update / Select et Mysql
- UPDATE TABLE MYSQL !
- INSERT ou UPDATE : Mysql
- update champs mysql
- Update de 2 tables MySql [RESOLU]
- MySQL : Pb de requete UPDATE très lente
- [Résolu] Update / Select LEFT JOIN / et mysql
- Bug avec MySQL -> update les champs à vide
- PR update
- Alexa, un update ?
- ON UPDATE KEY
- Google Update PR
- [PHP-MySQL] : argument is not a valid MySQL ressource
- Update de magpierss
- AwStats update
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités




le forum