Bonjour à tous
Après la suppression d'un enregistrement dans une bd pas plus tard qu'hier (merci à Fabrice pour son aide ), la suite logique est de faire la modification dans la base.
J'ai réalisé un listing de mes enregistrements, quand je clique sur un enregistrement celui-ci va sur une page ASP où des champs de textes accueillent les informations détenues dans la base.
Je coince à partir du moment où je dois envoyer les modifications dans la base.
Pour info car je ne sais pas si c'est important, mais id est un nombre.
Voici mon code (partiel) pour cette page:
<%var_id = Request.Querystring("reference")%>
<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set Rs = Server.CreateObject("ADODB.Recordset")
id_bis= Request.Form("id")
nom_bis= Request.Form("nom")
prenom_bis= Request.Form("prenom")
mail_bis= Request.Form("mail")
RequeteSQL = "Update annmoto Set nom='"&nom_bis&"',prenom='"&prenom_bis&"',mail='"&mail_bis&"' WHERE id='"&id_bis&"';"
Rs.Open RequeteSQL , Con%>
<%
Rs.Close
set Rs = Nothing
con.Close
set con = Nothing
%>
L'erreur provoquée est celle-ci :
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'
[Microsoft][Pilote ODBC Microsoft Access] Type de données incompatible dans l'expression du critère.
/modif_exe_ann_moto_wm.asp, line 40
et voici la ligne d'erreur (ligne 40):
Rs.Open RequeteSQL , Con
mais je pense plutôt que le problème se trouve une ligne plus haut
Merci à tous ceux qui essayeront de faire tourner ce code chatouilleur.
Greg