IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

Problème d'UPDATE sur un champ d'une table MyISAM


Sujet :

Requêtes MySQL

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 10
    Points : 5
    Points
    5
    Par défaut Problème d'UPDATE sur un champ d'une table MyISAM
    Bonjour,

    Je ne parviens pas à UPDATER un champ d'une table (33000 enregistrements pour l'instant). Pour ce faire, j'utilise une boucle While sous page .php soumise à condition (La valeur d'un autre champ doit être différente de 0). Je veux y insérer une valeur calculée dans cette même boucle. Avec un 'echo', je vérifie bien la nouvelle valeur '$val_num_support'. Mais sous PhpMyAdmin l'edition de la table ne me montre aucun changement.

    A chaque passage:

    UPDATE photos SET Taille_Support=$val_num_support WHERE ID_Photo =$ID

    Je reste à l'écoute pour fournir plus de renseignements à ceux ou celles qui peuvent m'aider.

    Merci d'avance
    Fichiers attachés Fichiers attachés

  2. #2
    Membre confirmé
    Avatar de DBProg
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 242
    Points : 579
    Points
    579
    Par défaut
    Salut !

    Difficile de répondre sans voir la schéma de la base de données, mais voici quelques pistes :

    - if ($objLien0->Code_Taille_Support!=='0')
    Il y a peut-être une erreur de syntaxe, en tout cas je ne connais pas l'opérateur !==

    - $Requete1 = "SELECT Lib_Taille FROM taille WHERE ID_Taille='$Code_Support' ";
    Si ID_Taille est un entier, tu n'as pas besoin de mettre des ' ' autour de $Code_Support

    Après je t'avoue que je n'ai pas trop d'idées... Désolé

  3. #3
    Futur Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    Salut dbproq,

    Il s'avère que mon problème est plus simple que ce que je présentais!

    la requête que je soumets ne retourne pes d'erreur, mais ne change rien à la ligne concernée:

    UPDATE photos SET Taille_Support=88139 WHERE ID_Photo =2 (par exemple)

    ne modifie pas la valeur de champ Taille_Support ( et ID_photo=2 existe bien).

    qu'en penses-tu ?

  4. #4
    Membre confirmé
    Avatar de DBProg
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    242
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 242
    Points : 579
    Points
    579
    Par défaut
    Salut !

    Quel est le type du champ Taille_Support ?
    Essaye peut-être de cette manière selon le type du champ :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    UPDATE photos SET Taille_Support='88139' WHERE ID_Photo =2 (par exemple)
     
    ou
     
    UPDATE photos SET `Taille_Support`='88139' WHERE ID_Photo =2 (par exemple)
    Les backquote sont parfois utile, je les mets tout le temps en fait moi.

  5. #5
    Futur Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    Salut,

    Le type de ce champ est smallint(6)
    88139 devrait pouvoir y entrer.

    J'ai essayé tes propositions (sur phpMyAdmin 2.6.4-pl4) enSQL
    mais ça ne marche toujours pas. J'ai même relancé les services entre chaque essai pour régler les éventuels problèmes de cache.

  6. #6
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332

  7. #7
    Futur Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 10
    Points : 5
    Points
    5
    Par défaut
    Salut,

    Je ferai bien de consulter les docs officielles,
    En passant en integer le problème est résolu.

    Dire que je n'avais pas percuté alors que la valeur affichée passait à 32767!
    Soit la Max d'une smallint !!

    Merci!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Problème de test sur plusieurs champs dans une table
    Par Cavart dans le forum Access
    Réponses: 1
    Dernier message: 23/11/2011, 14h51
  2. Réponses: 1
    Dernier message: 02/06/2009, 17h50
  3. Problème d'accents sur les champs d'une BDD
    Par gyome314 dans le forum Ruby on Rails
    Réponses: 1
    Dernier message: 29/07/2007, 13h14
  4. Réponses: 7
    Dernier message: 26/05/2006, 19h45
  5. contrainte sur deux champs d'une table
    Par bdkiller dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 17/09/2004, 18h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo