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 :

Error Code : 1066 Not unique table/alias


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 8
    Par défaut Error Code : 1066 Not unique table/alias
    Bonjour,
    j'ai une erreur :

    Error Code : 1066
    Not unique table/alias: 'win_playlist'
    (0 ms taken)

    sur la requete :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    SELECT 
    	win_user.iduser AS iduser,	
    	win_user.idplaylist AS idplaylist,	
    	win_user.playlist AS playlist,	
    	win_playlist.idplaylist AS idplaylist_wi,	
    	win_playlist.idvideo AS idvideo,	
    	win_video.idvideo AS idvideo_wi,	
    	win_video.video AS video
    FROM 
    	win_user LEFT OUTER JOIN win_playlist ON win_playlist.idplaylist	=	win_user.idplaylist,	
    	win_playlist LEFT OUTER JOIN win_video ON win_video.idvideo	=	win_playlist.idvideo
    WHERE 
    	(
    	win_user.iduser = {11}
    )
    Je ne comprends pas pourquoi, quelqu'un aurait il une idée
    merci

  2. #2
    Membre éprouvé Avatar de lou-03
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 156
    Par défaut
    Bonjour,

    Je pense que ça vient du fait que tu donnes un alias à tes champs mais que tu ne les utilise pas après dans ta requête.

    au lieu de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    win_user LEFT OUTER JOIN win_playlist ON win_playlist.idplaylist = win_user.idplaylist,	
    win_playlist LEFT OUTER JOIN win_video ON win_video.idvideo = win_playlist.idvideo
    tu devrais mettre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    win_user LEFT OUTER JOIN win_playlist ON idplaylist_wi = idplaylist,	
    win_playlist LEFT OUTER JOIN win_video ON idvideo_wi = idvideo

  3. #3
    Membre chevronné Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Par défaut
    FROM win_user
    LEFT OUTER JOIN win_playlist ON win_playlist.idplaylist= win_user.idplaylist,
    win_playlist LEFT OUTER JOIN win_video ON win_video.idvideo = win_playlist.idvideo
    WHERE
    (
    win_user.iduser = {11}
    )
    couleur = erreur


    tu devrais mettre :

    Code :

    win_user LEFT OUTER JOIN win_playlist ON idplaylist_wi = idplaylist,
    win_playlist LEFT OUTER JOIN win_video ON idvideo_wi = idvideo

    des jointures sur des alias ?

  4. #4
    Membre éprouvé Avatar de lou-03
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 156
    Par défaut
    Je ne suis pas sûr mais il me semble avoir eu le même problème (il y a quelques temps) et que c'était un problème d'alias.
    Mais maintenant que tu le dis jota5450, je n'avais même pas fait attention aux { } autour du 11 qui sont certainement la source de l'erreur. J'avoue ma faute ^^.

    En passant je ne pense pas que les ( ) après le Where soit nécessaires.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 8
    Par défaut
    Merci pour votre réponse, cela ne fonctionne toujours pas, les suggestions renvoient la même erreur, même en retirant les alias :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    SELECT 
    	win_user.iduser,
    	win_user.idplaylist,
    	win_user.playlist,
    	win_playlist.idplaylist,
    	win_playlist.idvideo,
    	win_video.idvideo,
    	win_video.video
    FROM 
    	win_user LEFT OUTER JOIN win_playlist ON win_playlist.idplaylist	=	win_user.idplaylist,
    	win_playlist LEFT OUTER JOIN win_video ON win_video.idvideo	=	win_playlist.idvideo
    WHERE 
    	(
    	win_user.iduser = '5'
    )
    j'ai "résolu" le problème en utilisant la vieille méthode:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    SELECT
    win_user.iduser AS iduser,  
    win_user.idplaylist AS idplaylist,  
    win_user.playlist AS playlist,  
    win_playlist.idvideo AS idvideo ,
    win_playlist.rang AS rang,
    win_video.idvideo AS idvideo2 ,  
    win_video.video AS video ,  
    win_video.iduser AS iduser2
     
    FROM
    win_user,win_playlist,win_video
    WHERE
    win_playlist.idvideo = win_video.idvideo
    AND
    win_user.idplaylist = win_playlist.idplaylist
    AND   
    win_user.iduser = '5'
    mais cela ne me satisfait pas car j'aimerai comprendre pourquoi cela ne fonctionne pas

  6. #6
    Membre éprouvé Avatar de lou-03
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 156
    Par défaut
    C'est peut être dû à tes parenthèses :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    WHERE 
    	(
    	win_user.iduser = '5'
    )
    Que tu n'as plus mis dans ta deuxième méthode

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    WHERE
    win_playlist.idvideo = win_video.idvideo
    AND
    win_user.idplaylist = win_playlist.idplaylist
    AND   
    win_user.iduser = '5'
    Personellement je n'en ai jamais mises. Alors je ne sais pas l'impact que ça a sur la requête.

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

Discussions similaires

  1. Erreur "Not unique table/alias"
    Par arnesto dans le forum Requêtes
    Réponses: 4
    Dernier message: 29/05/2012, 15h29
  2. #1066 - Not unique table/alias:
    Par nexuspolaris dans le forum Requêtes
    Réponses: 12
    Dernier message: 28/05/2012, 15h49
  3. Not unique table/alias
    Par volledoen dans le forum Requêtes
    Réponses: 2
    Dernier message: 14/10/2011, 16h24
  4. Not unique table/alias
    Par yann123456 dans le forum Requêtes
    Réponses: 4
    Dernier message: 24/03/2010, 17h14
  5. #1066 - Not unique table/alias
    Par mafilek dans le forum Requêtes
    Réponses: 4
    Dernier message: 17/04/2007, 16h38

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