Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/11/2006, 17h20   #1
Membre à l'essai
 
Avatar de tiger33
 
Développeur informatique
Inscription : février 2004
Messages : 77
Détails du profil
Informations personnelles :
Âge : 32

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2004
Messages : 77
Points : 23
Points : 23
Par défaut [SQL] Erreur de syntaxe sur requete complexe

J'ai une erreur de syntaxe : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AS Anniversaire<'2007-01-06' AND NOT EXISTS (SELECT bilan_mission.ID_mission, no' at line 1
sur :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
//Bilan de mission à réclamer dans les deux mois
$reclBM='SELECT bilan_mission.ID_mission, nom,prénom,resp_opé'
        . ' AS Responsable,'
        . ' MAX(date_add(date_realisation,'
        . ' INTERVAL 1 Year )) AS Anniversaire'
        . ' FROM agent,mission,bilan_mission'
        . ' WHERE agent.ID=mission.ID_agent'
        . ' AND mission.ID=bilan_mission.ID_mission'
        . ' AND ((agent.ID_pôle=\''.$_SESSION["pole"].'\') OR ('
        . $_SESSION["pole"].'=\'0\'))'
        . ' GROUP BY bilan_mission.ID_mission, nom,prénom,resp_opé'
        . ' HAVING MAX(date_add(date_realisation, INTERVAL 1 Year )) AS Anniversaire<\''.$dans_deux_mois.'\''
        . ' AND NOT EXISTS (SELECT bilan_mission.ID_mission, nom,prénom,resp_opé'
        . ' AS Responsable'
        . ' FROM agent,mission,bilan_mission'
        . ' WHERE agent.ID=mission.ID_agent'
        . ' AND mission.ID=bilan_mission.ID_mission'
        . ' AND ((agent.ID_pôle=\''.$_SESSION["pole"].'\') OR ('
        . $_SESSION["pole"].'=\'0\'))'
        . 'HAVING date_demande>aniversaire)';
Mon but, selectionner les bilans de missions donc l'anniversaire de la date de dernière réalisation arrive dans les deux moi et non suivi d'une date de demande(car cela signifie qu'il a été déja réclamé)

mcd Joint
Fichiers attachés
Type de fichier : zip epata.zip (6,3 Ko, 0 affichages)
tiger33 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2006, 17h44   #2
Inactif
 
Avatar de Kerod
 
Inscription : septembre 2004
Messages : 11 753
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 11 753
Points : 14 585
Points : 14 585
Fais un echo de ta requete et on verra tout de suite d'ou vient le problème
Kerod est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2006, 17h52   #3
Membre expérimenté
 
Avatar de papyphp
 
Inscription : avril 2005
Messages : 425
Détails du profil
Informations personnelles :
Âge : 62
Localisation : Belgique

Informations professionnelles :
Secteur : Enseignement

Informations forums :
Inscription : avril 2005
Messages : 425
Points : 545
Points : 545
Bonsoir,

Tu as tous les éléments dans l'erreur,

Citation:
J'ai une erreur de syntaxe : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AS Anniversaire<'2007-01-06' AND NOT EXISTS (SELECT bilan_mission.ID_mission, no' at line 1
Il reste à trouver le AS Anniversaire<'200...

Ensuite un petit tour dans la doc et on voit que having peut porter sur des alias donc :

Code :
1
2
3
. ' GROUP BY bilan_mission.ID_mission, nom,prénom,resp_opé'
        . ' HAVING Anniversaire<\''.$dans_deux_mois.'\''
        . ' AND NOT EXISTS (SELECT bilan_mission.ID_mission, nom,prénom,resp_opé'
On réessaye et on prie
__________________
Lu kinze d' awousse, la Vierje arandje û dusbrôle lu timp. Et ce coup ci, elle ne nous a pas ratés
papyphp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/11/2006, 09h54   #4
Membre à l'essai
 
Avatar de tiger33
 
Développeur informatique
Inscription : février 2004
Messages : 77
Détails du profil
Informations personnelles :
Âge : 32

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2004
Messages : 77
Points : 23
Points : 23
ca marche merci après 3 erreurs supplémentaires corrigées(spassiba)
tiger33 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h39.


 
 
 
 
Partenaires

Hébergement Web