[ASP] Faire 2 requetes SQL dans la même page ASP

Faire 2 requetes SQL dans la même page ASP [ASP] - Programmation

Marsh Posté le 03-07-2002 à 16:01:35    

Est-ce qu'on peut faire appel deux fois à un recordset :*
Comme ça:
 
'-- Création du recordset evenements
leSQL = "SELECT * FROM evenements ORDER by date"  
Set rstevenements = server.CreateObject("ADODB.Recordset" )
rstevenements.Open leSQL, conbdevenements
 
 
'--Et 10 lignes plus loin faire
 
'-- Création du recordset photos
leSQL2 = "SELECT * FROM evenements, photos" & _
         "WHERE Numero_Evenement = Nb AND Numero_Evenement = Numero_Ev"
Set rstphotos = server.CreateObject("ADODB.Recordset" )
rstphotos.Open leSQL2, conbdevenements
 
 
 
Parce qu'il me dit qu'il y a une erreur de syntase dans la clause from, et je n'en vois pas.
PS : Il arrive à "compiler", mais il affiche le début de la page, et il me met cette erreur.
 
Thanks...

Reply

Marsh Posté le 03-07-2002 à 16:01:35   

Reply

Marsh Posté le 03-07-2002 à 16:04:05    

tu peux faire autant de recordset que tu veux dans ton script.
 
ton erreur viendrait pas de & _ , mets tt sur une seule ligne pour voir si c pas ca
       


---------------
ACH   : Hard Top E36 Bleu Avus de pref.
Reply

Marsh Posté le 03-07-2002 à 16:04:58    

il manque un espace entre photos et WHERE .
 
Voila


---------------
ACH   : Hard Top E36 Bleu Avus de pref.
Reply

Marsh Posté le 03-07-2002 à 16:06:00    

Quand tu as des erreurs comme ca, fais un Response.write de ta requete juste avant de l'ouvrir.


---------------
ACH   : Hard Top E36 Bleu Avus de pref.
Reply

Marsh Posté le 04-07-2002 à 09:11:49    

J'ai rajouté un espace, je ne sais pas si c'est la qu'il fallait le mettre :
 
'-- Création du recordset photos
leSQL2 = "SELECT * FROM evenements, photos " & _
         "WHERE Numero_Evenement = Nb AND Numero_Evenement = Numero_Ev"
Set rstphotos = server.CreateObject("ADODB.Recordset" )
rstphotos.Open leSQL2, conbdevenements
 
Mais dans tous les cas, ça me met une autre erreur :
Aucune valeur donnée pour un ou plusieurs des paramètres requis.  
 

Reply

Marsh Posté le 04-07-2002 à 11:53:49    

Je pense ke ds ta requete tu confonds différentes valeurs :
 
==> Numero_Evenement = Nb
==> Numero_Evenement = Numero_Ev  
 
 
J'imagine que Nb et Numero_Ev sont des variables ASP, cad soit des chiffres que tu as rentré à la main (Form ou autre) soit des resultantes de ton premier recordset rstevenements. Si c le cas, ta syntaxe est mauvaise, tu dois mettre :
 
1er cas : "SELECT * FROM evenements, photos WHERE Numero_Evenement = " & Nb & " AND Numero_Evenement = " & Numero_Ev & " ORDER BY xxx"
 
2eme Cas : "SELECT * FROM evenements, photos WHERE Numero_Evenement = " & rstevenements("Nb" ) & " AND Numero_Evenement = " & rstevenements("Numero_Ev" ) & " ORDER BY xxx"
 
Si c ca.
A+
 


---------------
ACH   : Hard Top E36 Bleu Avus de pref.
Reply

Marsh Posté le 04-07-2002 à 12:25:30    

Ouais c'est clair que j'ai un peu de mal avec la syntaxe :
des fois ils mettent '" & truc & "'
des fois c'est " & truc
des fois c'est truc.
 
Enfin pour mon truc nb c'est une variable que j'ai déclaré dans ma page asp.
Numero_Evenement c'est la clè primaire d'une table, et Numero_Evg c'est la clé primaire d'une autre table.
Donc quand je fais Numero_Evenement = Numero_Ev c'est une jointure.
Et quand je fais Numero_Evenement = Nb c'est pour spécifier l'évenement que je veux.
 
Pourrais tu me donner la syntaxe exacte, stp, ect-ce que c'est ça.
 
Et si possible m'expliquer ou m'indiquer ou je peux trouver les différentes syntaxes en fonction de différentes variables.
 
C'est ça? ->
"SELECT * FROM evenements, photos WHERE Numero_Evenement = " & Nb & " AND Numero_Evenement = Numero_Ev ORDER BY xxx"  
 
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed