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 :

requete mysql et lien entre table [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé Avatar de kaking
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 753
    Par défaut requete mysql et lien entre table
    bonjour tous le monde


    je voudrais simplement savoir si c'est normal qu'une simple liaison du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from clients c left JOIN service s ON c.id=s.id_user
    fasse planter tout mon prog tout ca parceque ma table client contient 10000 donnees et ma table service en contient 20000

    merci

  2. #2
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    essaye avec :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from clients as c left JOIN service as s ON c.id=s.id_user

  3. #3
    Membre éclairé Avatar de kaking
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 753
    Par défaut
    prrrrrrt...c'est pareil...

  4. #4
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Essaye de placer un "or die(mysql_error());" pour voir si ce n'est pas un problème dans ta requête :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query("SELECT * FROM clients AS c LEFT JOIN service AS s ON c.id=s.id_user") or die(mysql_error());

    Et dit nous l'erreur qui s'affiche si il y en a une.

  5. #5
    Membre éclairé Avatar de kaking
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 753
    Par défaut
    na, je fais ca dans phpmyadmin donc pas d'erreur possible...


    mais ca peux pas etre a cause des 30 000 donnees reunies dans ces 2 tables que ca plante?

  6. #6
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    ça dépend

    J'ai déjà fait des jointure sur des tables qui avaient beaucoup plus d'enregistrement et il n'y avait pas de problème.

    Âpres il arrive parfois que php n'a pas assez de mémoire tampon allouer pour récupérer les données mais ça affiche une erreur.

    Quand tu dit que "ça fait planter tout ton programme", il se passe quoi exactement ? Même pas une petite erreur qui s'affiche ?

  7. #7
    Membre éclairé Avatar de kaking
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 753
    Par défaut
    na, simplement que je lui demande d'executer ma requete et ....ca charge et puis c'est tout!

    y'a pas d'erreur :

    si je lui demande de faire ca, ca plante-ou charge pendant plus de 10 minutes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT *
    FROM clients c
    LEFT JOIN service s ON c.id = s.id_user
     
    ou
     
    SELECT *
    FROM clients c
    INNER JOIN service s ON c.id = s.id_user

    mais si je lui demande de faire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT c.contact
    FROM clients c
    INNER JOIN service s ON c.id = s.id_user
    la il veut bien : donc c'est bien un probleme de grosseur des tables, non?

  8. #8
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Essaye de rajouter un WHERE pour limiter le nombre d'enregistrement et voir si le problème vient du nombre important de ligne.

    Tu peux également remplacer le SELECT * par les champs que tu souhaites récupérer pour gagner de la mémoire.

    Tes champs id et id_user sont bien indexé (ou clé primaire) ?

  9. #9
    Membre éclairé Avatar de kaking
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 753
    Par défaut
    mmmh...pas indexe, pourquoi, faut?

  10. #10
    Membre éclairé Avatar de schwarzy2
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 464
    Par défaut
    oui oui il faut!
    c'est très important, moi j'ai déja eu des requêtes qui prenaient 10 minutes à charger et qui ne prennent plus que 2 sec. par un simple index.
    Les champs sur lesquels reposent tes liens entre les tables doivent être indexés.

  11. #11
    Membre éclairé Avatar de kaking
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 753
    Par défaut
    haaaaaaaaa daccoooooooooooooord!!!!!!!


    mais c'est super ca!!!!!!


    merci beaucoup Seb33300 de m'avoir mis sur la piste,super sympa ^^!

    super!



    merci aussi a schwarzy

  12. #12
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    De rien

    Pense à cliquer sur "Résolu" si ton problème est résolu

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

Discussions similaires

  1. Requete pour trouver des liens entre tables
    Par titemimine dans le forum Requêtes
    Réponses: 3
    Dernier message: 24/02/2010, 09h26
  2. Requête et liens entre tables MySQL
    Par kaking dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 09/11/2008, 09h23
  3. requete lien entre table
    Par Mathieu.Nanoux dans le forum Développement
    Réponses: 1
    Dernier message: 08/04/2008, 07h30
  4. requete lien entre table
    Par Mathieu.Nanoux dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 08/04/2008, 07h30
  5. Lien entre tables
    Par yves12 dans le forum Access
    Réponses: 7
    Dernier message: 31/07/2006, 17h29

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