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

 MySQL Discussion :

requête mysql sous php


Sujet :

MySQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 65
    Points : 53
    Points
    53
    Par défaut requête mysql sous php
    Bonjour,

    je souhaite copier dans table1 tous les enregistrements de table2 dont la valeur du champ table2.num est présent dans table3.num

    table1 et table2 ont la même structure.


    Cette requête ne fonctionne pas :
    INSERT INTO table1 SELECT * FROM table2, table3 WHERE table2.num=table3.num

    Merci de m'aider !

  2. #2
    Membre régulier
    Inscrit en
    Février 2003
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 109
    Points : 111
    Points
    111
    Par défaut
    un peu plus de details serait bienvenue.

    quelle est l'erreur renvoyée ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    pas d'erreur renvoyée, mais aucune donnée copiée dans table1.
    Normalement, des données auraient dûes être copiées.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    Je viens d'essayer, ça ne fonctionne toujours pas.

    ce code fonctionne :
    INSERT INTO table1 SELECT * FROM table2

    Mais je ne parviens toujours pas à faire la condition de sélection

    Merci de m'aider, je continue à chercher...

  5. #5
    Membre habitué Avatar de Kimael
    Inscrit en
    Avril 2002
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 151
    Points : 159
    Points
    159
    Par défaut
    Il faut que tu précises tous les noms de colonnes pour que le SGBD soit sûr que ça colle !

    Citation Envoyé par remi59
    Cette requête ne fonctionne pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    INSERT
    INTO table1
    SELECT *
    FROM table2, table3
    WHERE table2.num=table3.num
    Cette requête deviendrait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    INSERT (col1, col2, col3)
    INTO table1
    SELECT t2.champs1 AS col1, t2.champs2 AS col3, t2.champs4012 AS col3
    WHERE t2.champs1 = t3.chps1 AND t2.champs2 = t3.chps36 AND t2.champs4012 = t3.chps69;
    Ca te parle ? est-ce que ça te parle... ? Tu es aware ? MDR pardon...

    PS: sinon, ça peut être une simple histoire de parenthèses... mais j'en doute

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    Ca ne fonctionne toujours pas... Pas de msg d'erreur. Juste données pas copiées.

    Je souhaite copier les données d'une table dans une autre table à condition qu'il y ait une occurence d'un id d'une troisième table. table1 et table2 ont exactement la même structure, les mêmes noms de champs et tout.

    Inutile de préciser tous les champs (j'ai essayé, ça ne marche pas mieux) :
    ce code "INSERT INTO table1 SELECT * FROM table2 " fonctionne, j'aimerais le code me permettant de faire la sélection des données.

    merci d'avance

  7. #7
    Membre habitué Avatar de Kimael
    Inscrit en
    Avril 2002
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 151
    Points : 159
    Points
    159
    Par défaut
    Citation Envoyé par remi59
    Inutile de préciser tous les champs (j'ai essayé, ça ne marche pas mieux)
    Ah pardon... moi, quand ça ne marche pas et que je ne comprend pas pourquoi, je prend des gants ! Alors voilà ce qui arrive

    Ton problème est assez mystérieux.
    Avec quoi effectue-tu tes requêtes ?
    As-tu une preuve que la requête est bien exécutée et que c'est la jointure qui ne se fait pas ?

    On va y arriver...

  8. #8
    Membre habitué Avatar de Kimael
    Inscrit en
    Avril 2002
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 151
    Points : 159
    Points
    159
    Par défaut Re: [débutant] requête mysql sous php
    Citation Envoyé par remi59
    Cette requête ne fonctionne pas :
    INSERT INTO table1 SELECT * FROM table2, table3 WHERE table2.num=table3.num
    Euh, en fait je crois que j'avais vu juste en parlant de parenthèses !
    Essaye ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO table1 (SELECT * FROM table2, table3 WHERE table2.num=table3.num);

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    problème résolu.
    pour info voici la solution trouvée :
    INSERT INTO table1 SELECT table2.* FROM table2 INNER JOIN table3 ON table2.num=table3.num

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    J'ai oublié de remercier ceux qui ont eu la gentillesse de se pencher sur mon problème ! merci !
    Alors voilà c'est fait.

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

Discussions similaires

  1. Réponses: 23
    Dernier message: 24/10/2011, 21h56
  2. Requête soap sous php
    Par glorious_rk dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 19/05/2010, 14h50
  3. [MySQL] requête mysql avec php
    Par affreuxzozo dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 30/04/2009, 17h02
  4. Exécuter une requête MySQL en php sur serveur OVH
    Par phebus1204 dans le forum Requêtes
    Réponses: 3
    Dernier message: 15/04/2009, 16h41
  5. [MySQL] requêtes mysql avec php
    Par youness78 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 12/07/2007, 16h37

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