Naomac
Messages postés3Date d'inscriptionsamedi 17 décembre 2005StatutMembreDernière intervention15 janvier 2006
-
14 janv. 2006 à 18:42
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 2006
-
15 janv. 2006 à 12:43
Bonjour, j'ai un problème avec ma requête SQl, je dois mettre 3 WHERE et cela ne marche pas! Je ne trouve pas mon erreur!
peut-être que vous la voyez!
voici mon code:
<% 'connection à la base de donnée
Dim rs_resultats
Dim rs_resultats_numRows
Set rs_resultats = Server.CreateObject("ADODB.Recordset")
rs_resultats.ActiveConnection = MM_Conn_persatatv_STRING
'SQL: jointures tables tb_Emission, tb_Diffusion et tb_Chaines
rs_resultats.Source = "SELECT * FROM (tb_Emission INNER JOIN tb_Diffusion ON tb_Emission.id_emission=tb_Diffusion.id_emission) INNER JOIN tb_Chaines ON tb_Chaines.id_chaine=tb_Diffusion.id_chaine WHERE tb_Diffusion.date='"& Request.Form("dateprog") & " ' AND WHERE tb_Diffusion.moment='"& Request.Form("momentjour") & "' AND WHERE tb_Chaines.nom='"& Request.Form("chaineprog") & "' "
rs_resultats.CursorType = 0
rs_resultats.CursorLocation = 2
rs_resultats.LockType = 1
rs_resultats.Open()
rs_resultats_numRows = 0
%>
but de ce code: il récupère d'un formulaire la date, le moment de diffusion et la chaines (sur le formulaire c par des menu/liste)
il recherche ces données dans la base de donnée
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 200621 14 janv. 2006 à 19:57
Salut,
Enlève d'abord tous les 'WHERE' qui se trouve après tes 'AND'. Ensuite, si ça ne marche pas tu reviens nous dire ce qui plante.
Une piste : dans une requête SQL simple, il ne peut y a voir QU'UNE clause 'WHERE' , à toi de la constituer à l'aide de 'AND' et 'OR'.
-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 14 janv. 2006 à 20:07
Salut
Je ne sais pas comment tu as écrit ton message, mais chez moi, toutes les lignes se retrouvent à la suite les unes des autres. Très difficile à lire.
Bref. Une erreur de syntaxe SQL avec les AND :
Ne mets que AND et pas AND WHERE
Le reste, je ne connais pas assez cette syntaxe qui semble être du .Net (c'est tellement moche )
Dans tes dernières lignes comme rs_resultats.CursorType = 0
Il doit exister des variables VB beaucoup plus parlantes que 0 (genre adUserDefined)
Tes Dim : Toujours préciser quel type de variable il s'agit :
Dim rs_resultats As ADODB.RecordSet
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
Naomac
Messages postés3Date d'inscriptionsamedi 17 décembre 2005StatutMembreDernière intervention15 janvier 2006 15 janv. 2006 à 10:56
Désolé pour l'affichage ms cela ne fctionne tjs pas!
explorer me dit que ma requête sql est mauvaise, il dit qu'il n'y a pas de fin d'instruction!!!
j'ai retirer les where et j'ai simplifié le code asp! (c le code qu'on apprend à l'école donc obligé)
<%
sql = "SELECT * FROM (tb_Emission INNER JOIN tb_Diffusion ON tb_Emission.id_emission=tb_Diffusion.id_emission) INNER JOIN tb_Chaines ON tb_Chaines.id_chaine=tb_Diffusion.id_chaine
WHERE tb_Diffusion.date LIKE '%"& Request.Form("dateprog") & "%'
AND tb_Diffusion.moment LIKE '%"& Request.Form("momentjour") & "%'
AND tb_Chaines.nom LIKE '%"& Request.Form("chaineprog") & "%'
AND tb_Emission.nom_prog LIKE '%"& Request.Form("mot") & "%' "
Set rs = Server.CreateObject("ADODB.Recordset")'connection à la base de donnée
rs.Open,sql,Conn,3,3
%>
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 200621 15 janv. 2006 à 12:43
Au passage, si tu codes en ASP, il y www.aspfr.com.
Mais, ASP ou VB la méthode d'attaque des bases par ADO est la même et je vois que tu as codé :
rs.Open,sql,Conn,3,3
il y a une virgule de trop :
rs.Open sql, Conn, 3, 3
-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?