Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1499 connectés 

  FORUM HardWare.fr
  Programmation
  ASP

  Requête SQL avec ASP

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Requête SQL avec ASP

n°134053
urd-sama
waste of space
Posté le 03-05-2002 à 13:45:26  profilanswer
 

Bon je suis pas très douée en asp et j'ai un problème avec ma requete sql dans mon code.
 
Requete:
<% Set oRs = Connect.Execute ("Select cal_comment from t_calendar  
where cal_annee = annee_courant  
and cal_mois = mois_courant  
and cal_jour = jour_courant" ) %>
 
et voici l'erreur que ca me donne:
Microsoft OLE DB Provider for ODBC Drivers error '80040e10'  
 
[Microsoft][Pilote ODBC Microsoft Access] Trop peu de paramètres. 3 attendu.  
 
 
si je limite ma requete au seul select ... from, cela fonctionne. Comment je dois faire pour qu'il accepte ma requete de cette facon-là?

mood
Publicité
Posté le 03-05-2002 à 13:45:26  profilanswer
 

n°134059
Mara's dad
Yes I can !
Posté le 03-05-2002 à 13:56:52  profilanswer
 

Connect.Execute ("Select cal_comment from t_calendar  
where cal_annee = " + annee_courant + " and cal_mois = " + mois_courant + " and cal_jour = " + jour_courant)  
 
OK ?


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°134068
Bonhomme
Posté le 03-05-2002 à 14:00:26  profilanswer
 

Urd-sama a écrit a écrit :

Bon je suis pas très douée en asp et j'ai un problème avec ma requete sql dans mon code.
 
Requete:
<% Set oRs = Connect.Execute ("Select cal_comment from t_calendar  
where cal_annee = annee_courant  
and cal_mois = mois_courant  
and cal_jour = jour_courant" ) %>
 
et voici l'erreur que ca me donne:
Microsoft OLE DB Provider for ODBC Drivers error '80040e10'  
 
[Microsoft][Pilote ODBC Microsoft Access] Trop peu de paramètres. 3 attendu.  
 
 
si je limite ma requete au seul select ... from, cela fonctionne. Comment je dois faire pour qu'il accepte ma requete de cette facon-là?  




 
Bah c'est normale que ça marche pas
Si j'ai bien compris tes paramètres c'est annee_courant,mois_courant,jour_courant
 
Alors la requête c'est :
 
<% Set oRs = Connect.Execute ("Select cal_comment from t_calendar where cal_annee = "&annee_courant&" and cal_mois = "&mois_courant&" and cal_jour = "&jour_courant) %>
 
Ca devrait marcher mieux avec les "& et &" qui te permmettent de passer tes paramètres  
 
Voili voilà
 
Bonhomme

n°134073
urd-sama
waste of space
Posté le 03-05-2002 à 14:05:39  profilanswer
 

oui ca fonctionne merci beaucoup
maintenant j'ai un problème de format, ca me mets l'erreur suivante:
Type incompatible: '[string: "Select cal_comment f"]'  
 
le champ est de type mémo sous access, je dois faire qqch de particulier dans le code asp?

n°134099
urd-sama
waste of space
Posté le 03-05-2002 à 14:46:56  profilanswer
 

up

n°134186
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 03-05-2002 à 16:32:45  profilanswer
 

Urd-sama a écrit a écrit :

Type incompatible: '[string: "Select cal_comment f"]'  




Si ton champ est de type memo, tu dois l'encadrer par des '...'
Fais un copier/coller de cette ligne dans ton source :
 
Select cal_comment from t_calendar where cal_annee = '" & annee_courant & "' and cal_mois = " & mois_courant & " and cal_jour = " & jour_courant

 

[jfdsdjhfuetppo]--Message édité par Harkonnen le 03-05-2002 à 16:33:49--[/jfdsdjhfuetppo]

n°134188
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 03-05-2002 à 16:34:19  profilanswer
 

Oublie le post précédent, je me suis gentiment loupé  :heink:  
 

Urd-sama a écrit a écrit :

Type incompatible: '[string: "Select cal_comment f"]'  




 :??:  
Tu as tapé ta requete correctement, tu n'as pas oublié de ", ou t'en a pas mis ou il ne fallait pas ?
 
Fais un copier/coller de cette ligne dans ton source :
 
Select cal_comment from t_calendar where cal_annee = " & annee_courant & " and cal_mois = " & mois_courant & " and cal_jour = " & jour_courant
 
Ca a l'air con, mais sous VB, si tu n'as pas d'espace entre le " et le &, tu as une erreur. Peut etre est-ce la meme chose en ASP ??
 
Je connais pas l'ASP, je te propose juste ceci tiré de mon expérience perso avec VB

 

[jfdsdjhfuetppo]--Message édité par Harkonnen le 03-05-2002 à 16:35:07--[/jfdsdjhfuetppo]

n°134197
siewn
Posté le 03-05-2002 à 16:47:37  profilanswer
 

Harkonnen a écrit a écrit :

Ca a l'air con, mais sous VB, si tu n'as pas d'espace entre le " et le &, tu as une erreur. Peut etre est-ce la meme chose en ASP ??




 
non, c'est le cas en asp.net mais pas en asp qui est plus tolérant ;)

n°134228
Bonhomme
Posté le 03-05-2002 à 17:15:26  profilanswer
 

Harkonnen a écrit a écrit :

Oublie le post précédent, je me suis gentiment loupé  :heink:  
 
 
 :??:  
Tu as tapé ta requete correctement, tu n'as pas oublié de ", ou t'en a pas mis ou il ne fallait pas ?
 
Fais un copier/coller de cette ligne dans ton source :
 
Select cal_comment from t_calendar where cal_annee = " & annee_courant & " and cal_mois = " & mois_courant & " and cal_jour = " & jour_courant
 
Ca a l'air con, mais sous VB, si tu n'as pas d'espace entre le " et le &, tu as une erreur. Peut etre est-ce la meme chose en ASP ??
 
Je connais pas l'ASP, je te propose juste ceci tiré de mon expérience perso avec VB  
 
 




 
Non pas d'erreur pour ce truc avec l'ASP je l'ai fait la semaine dernière pour un site :)
 
Bonhomme

n°135960
urd-sama
waste of space
Posté le 07-05-2002 à 13:44:38  profilanswer
 

super, merci beaucoup j'ai pu enfin régler le problème  :D  
je risque d'en rencontrer d'autres, au cas ou je vous sonnerai, en tout cas merci bokou  :ange:

mood
Publicité
Posté le 07-05-2002 à 13:44:38  profilanswer
 

n°136229
urd-sama
waste of space
Posté le 08-05-2002 à 07:58:58  profilanswer
 

et voilà j'ai un autre probleme maintenant
 
dans une page, je récupère la date, le mois et le jour, puis fait la meme requete sql que précédemment.
 
ensuite, je fais une condition:
- si recordset est EndOfFile, créé un nouvel enregistrement
- sinon update le champ de commentaire du recordset
 
la page me fait une erreur dans les 2 cas, je cite:
"ADODB.Recordset error '800a0cb3'  
Le fournisseur ou l'objet ne prend pas en charge cette opération."
 
c'est un probleme au niveau des permissions d'ecriture de la base de donnees access? (je n'ai rien touché à ce genre d'option, juste envoyé la base sur le serveur)
 
aidez-moi pour que je puisse partir en week-end l'esprit en paix  :sarcastic:

n°136253
Bonhomme
Posté le 08-05-2002 à 11:19:19  profilanswer
 

Balance le code on verra mieux parce que là à mon avis c'est une erreur de syntaxe ;)
 
Bonhomme

n°136469
Ataru
moshi moshi ?
Posté le 08-05-2002 à 19:36:43  profilanswer
 

C'est Urd qui écrit  :D  
 
<% jour_modif = Request.Form("jour" )
   mois_modif = Request.Form("mois" )
   annee_modif = Request.Form("annee" )
   commentaire = Request.Form("comment" )
%>
 
 
<%
Set Connect = Server.CreateObject("ADODB.Connection" )
ConnectDBQ="DRIVER={Microsoft Access Driver (*.mdb)};"&"DBQ="&Server.MapPath("/*********/basedonnee/calendar.mdb" )
Connect.Open ConnectDBQ
%>
<% sql= "Select * from t_calendar where cal_annee = " & annee_modif & " and cal_mois = " & mois_modif & " and cal_jour = " & jour_modif
set oRs = Connect.Execute (sql)
%>
 
<% if oRs.EOF = True then
oRs.AddNew
oRs.fields("cal_jour" ) = jour_modif
oRs.fields("cal_mois" ) = mois_modif
oRs.fields("cal_annee" ) = annee_modif
oRs.fields("cal_comment" ) = commentaire
oRs.Update
else
oRs.fields("cal_comment" ) = commentaire
oRs.Update
end if
oRs.Close
%>

 

[jfdsdjhfuetppo]--Message édité par Ataru le 08-05-2002 à 19:37:20--[/jfdsdjhfuetppo]


---------------
tout les goûts sont dans la nature, et la nature a tout les goûts !
n°136504
Rem'
Posté le 08-05-2002 à 20:59:47  profilanswer
 

J'ai pas tout compris mais essai ça :
<% sql= "Select * from t_calendar where cal_annee = " & annee_modif & " and cal_mois = " & mois_modif & " and cal_jour = " & jour_modif  
Set oRs = Connect.Execute (sql)  
 
  If (oRs.EOF) then  
   sql = "INSERT INTO T_CALENDAR (cal_jour, cal_mois, cal_annee, cal_comment) VALUES ('" & jour_modif & "', '" & mois_modif & "', '" & annee_modif & "', '" & commentaire & "'" )
  Else  
   sql = "UPDATE T_CALENDAR SET cal_comment = "' & commentaire & "'"
  End If  
Connect.Execute (sql)
oRs.Close  
%>  
 
Le seul problème est que quand ttu feras ton update il faut préciser sur quel enregistrement tu le fais et donc rajouter une clause WHERE sinon tous tes enregistrements seront modifiés.
 
@ + : Rem'

n°138686
urd-sama
waste of space
Posté le 14-05-2002 à 15:23:02  profilanswer
 

apparemment y'a une erreur de syntaxe, ca me mets "fin d'instruction attendue" pour la ligne du insert into
 
pour le update, j'ai simplement spécifié la clause where comme celle du select, ce qui donne:
 
sql = "UPDATE T_CALENDAR SET cal_comment = "' & commentaire & "' where cal_annee = " & annee_modif & " and cal_mois = " & mois_modif & " and cal_jour = " & jour_modif
 
Il doit y reste des erreurs de syntaxe dans ces différentes lignes, malheureusement j'arive pas à trouver lesquelles.

n°138707
Rem'
Posté le 14-05-2002 à 15:46:09  profilanswer
 

Recommence avec la requête SQL suivante :
 
"INSERT INTO T_CALENDAR (cal_jour, cal_mois, cal_annee, cal_comment) VALUES ('" & jour_modif & "', '" & mois_modif & "', '" & annee_modif & "', '" & commentaire & "';)"
 
(fais un copier coller)

n°139024
urd-sama
waste of space
Posté le 15-05-2002 à 09:29:49  profilanswer
 

okay l'instruction update fonctionne correctement! merci!
par contre j'ai l'erreur "Erreur de syntaxe dans l'instruction UPDATE." pour ca:
 
sql = "UPDATE T_CALENDAR SET cal_comment = "' & commentaire & "' where cal_annee = " & annee_modif & " and cal_mois = " & mois_modif & " and cal_jour = " & jour_modif
 
je suis en train de tenter de trouver l'erreur mais si jamais qqun voit ca avant moi...

n°139038
Rem'
Posté le 15-05-2002 à 09:39:00  profilanswer
 

Essais avec ça (preds l'habitude de metre le SQL en majuscule car cé + lisible)
 
sql = "UPDATE T_CALENDAR SET cal_comment = '" & commentaire & "' where cal_annee = " & annee_modif & " and cal_mois = " & mois_modif & " and cal_jour = " & jour_modif

n°139080
urd-sama
waste of space
Posté le 15-05-2002 à 10:18:57  profilanswer
 

génial! merci beaucoup tout fonctionne!!
vraiment tu me sauve la vie, fallait absolument que je finisse ce truc pour le boulot cette semaine et j'avais peur de jamais y arriver!
Vraiment un grand MERCI  :love:

n°139096
Rem'
Posté le 15-05-2002 à 10:31:46  profilanswer
 

No problemo cé pas c'ki avait de + difficile

n°151522
urd-sama
waste of space
Posté le 05-06-2002 à 11:08:00  profilanswer
 

coucou j'ai encore un dernier problème
quand je remplis le champ de commentaire avec un string, il me fait une erreur si je mets un apostrophe.
je dois faire un test sur la string et remplacer chaque ' par /'?
ou y'a-t-il une solution plus simple?
dans tous les cas, qqun à un code a me proposer? (vu que je suis archi nulle en syntaxe)
merci beaucoup d'avance  :sarcastic:

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  ASP

  Requête SQL avec ASP

 

Sujets relatifs
les serveurs TSE fin des ASP ???suppression de fichiers en ASP
[oracle] sniffer de requete[ASP] pb sur requete SQL
[ASP][SQL] une requête pour connaitre la structure d'une table ???[ASP] Requete SQL c'est koi l'inverse de "order by"
[ASP] Requete SQL c'est koi l'inverse de "order by"[ASP][SQL] type de champ dans une requete
techniques pour mettre en cache les résultats d'une requete SQL en ASP 
Plus de sujets relatifs à : Requête SQL avec ASP


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR