Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
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 30/11/2006, 17h33   #1
Membre régulier
 
Inscription : juin 2006
Messages : 324
Détails du profil
Informations personnelles :
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : juin 2006
Messages : 324
Points : 80
Points : 80
Par défaut Probleme requete Update

Bonjour,

J'ai l'erreur suivante lorsque la requête ci-dessous s'execute.
Quelqu'un a t'il une idée ?

Merci




Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

/RetourTransaction.asp, line 13

(la ligne :Set rs = conn.Execute(SQL)


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
<%
Dim conn
Dim rs
Dim sql
Dim connstring
 
Set conn = Server.CreateObject("ADODB.Connection")
 
connstring="DRIVER={Microsoft Access Driver (*.mdb)}; " & "DBQ=" & Server.MapPath(".") & "/admin/ems07.mdb" 
conn.Open connstring 
 
SQL = "UPDATE inscriptions SET id_trans='"& Request.QueryString("id_trans")&"', etat='"& Request.QueryString("etat")&"', date_trans='"& Request.QueryString("date_trans")&"', montant='"& Request.QueryString("montant")&"' WHERE id_client="&Request.QueryString("id_client")&""
Set rs = conn.Execute(SQL)
Response.Redirect("RetourTransactionRegistrationOkemsFR.asp")
 
Set rs = Nothing
conn.close
set conn=nothing
 
%>
nicolasferraris est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2006, 21h59   #2
Membre chevronné
 
Avatar de efficks
 
Inscription : septembre 2005
Messages : 714
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 714
Points : 689
Points : 689
Tu es sur le mauvais forum car le problème (comme le message d'erreur l'indique) est un problème avec ta requête SQL.
C'EST CLAIREMENT ÉCRIT que le "Data type mismatch in criteria expression"
Le type de donnée ne concorde pas avec les critères dans l'expression.
Peut-être essaye-tu de valider du texte avec un nombre ou l'inverse.
Fait un Response.Write(SQL) à la ligne 13 avant le execute.


... et apprends à lire les messages
__________________
Avant de poster : FAQ, tutos, rechercher, google, ... Après :
Merci
efficks est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/12/2006, 08h12   #3
Expert Confirmé
 
Avatar de pc75
 
Inscription : septembre 2004
Messages : 2 809
Détails du profil
Informations personnelles :
Âge : 56
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : septembre 2004
Messages : 2 809
Points : 3 011
Points : 3 011
Bonjour,

Fait attention au type de tes champs. S'ils sont de type numérique, il ne faut pas les encadrer avec des quotes.
__________________
Par principe, je ne réponds pas aux messages URGENT.
Il n'y a pas de choses urgentes, il n'y a que des choses en retard. (un inconnu)
pc75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/12/2006, 08h58   #4
Membre régulier
 
Inscription : juin 2006
Messages : 324
Détails du profil
Informations personnelles :
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : juin 2006
Messages : 324
Points : 80
Points : 80
Par défaut suite

Le response.write me renvoie ceci.
"UPDATE inscriptions SET id_trans='33406-00044', etat='ok', date_trans='2006-12-01 08:35:18', montant='330' WHERE id_client=6"
donc apparamment les valeurs passent bien.

Tous mes champs de la base ACCESS sont de type texte
nicolasferraris est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/12/2006, 10h49   #5
Expert Confirmé
 
Avatar de pc75
 
Inscription : septembre 2004
Messages : 2 809
Détails du profil
Informations personnelles :
Âge : 56
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : septembre 2004
Messages : 2 809
Points : 3 011
Points : 3 011
Re,

Si TOUS les champs sont de type texte, il y a un hic ici :

Code :
1
2
 
WHERE id_client= '" & Request.QueryString("id_client") & "' "
__________________
Par principe, je ne réponds pas aux messages URGENT.
Il n'y a pas de choses urgentes, il n'y a que des choses en retard. (un inconnu)
pc75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/12/2006, 10h52   #6
Membre régulier
 
Inscription : juin 2006
Messages : 324
Détails du profil
Informations personnelles :
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : juin 2006
Messages : 324
Points : 80
Points : 80
Par défaut suite...

Je les avais effectivement oubliés. Ca marche.

Je te remercie
nicolasferraris 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 13h37.


 
 
 
 
Partenaires

Hébergement Web