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

PHP & Base de données Discussion :

Plusieurs requetes simultanées


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 7
    Par défaut Plusieurs requetes simultanées
    Bonjour,
    Je cherche a executer plusieurs INSERT dans une seule requete séparé par des ";". Est-ce possible ? Je souhaite faire ça car je pense que ça serai plus rapide que de faire un mysql_query dans une boucle ?!

    Merci

  2. #2
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    non, mysql ne supporte pas encore les requetes multiples.

    Par contre, tu as une syntaxe pour inserer plusieurs lignes d'un coup :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    INSERT 
    table (col1, col2, ...) 
    VALUES 
    (val1, val2, ...),  -- 1ere ligne
    (val3, val4, ...)   -- 2eme ligne
    Evite d'inserer plus de 1000 lignes d'un coup, mysql aime pas quand y en a trop quand meme ;o) mais tout depend de la taille des données dans chaque ligne.

  3. #3
    Membre émérite
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Par défaut
    Je n'ai pas la solution à ton problème, mais si ton sgbd et ton apache sont sur le meme serveur, je pense que l'otimisation n'en vaut pas la chandelle... En revanche, sur un serveur distant, je suppose que ça peut être interessant.

    Sinon, je crois qu'il existe un moyen de traiter toutes tes requetes en bloc à un moment donné... Je m'en suis jamais servi et je ne sais pas comment on fait, mais le principe serait de buffuriser des requetes pour toutes les executé d'un seul coup... j'avais vu ça sur un article qui parlait de la création de panier pour site commerçant en PHP.

    Si quelqu'un a deja entendu parler de ça, ça m'interesse également :p

  4. #4
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 288
    Par défaut
    mysql_query n'accepte effectivement pas les requêtes multiples. Par contre, si tu as PHP5, MySQL5 et la nouvelle API mysqli, tu peux utiliser mysqli_multi_query.

    Ceci dit, si c'est juste pour insérer plusieurs lignes dans la même table, le + efficace est l'insert multi-lignes que Fladnag t'a montré.

Discussions similaires

  1. Réponses: 5
    Dernier message: 09/01/2010, 13h51
  2. [CrystalReport]ouvrir plusieur états simultanément
    Par mcrocher dans le forum SAP Crystal Reports
    Réponses: 7
    Dernier message: 23/03/2005, 17h14
  3. [Access] Insérer dans plusieurs tables simultanément
    Par coolkis dans le forum Bases de données
    Réponses: 5
    Dernier message: 22/03/2005, 15h00
  4. Réponses: 6
    Dernier message: 15/04/2004, 11h04
  5. [KeyEvent] plusieurs touches simultanées enfoncées
    Par gege2mars dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 07/01/2004, 11h44

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