Pb d'update

luck_y6 Messages postés 7 Date d'inscription dimanche 25 juillet 2004 Statut Membre Dernière intervention 28 juillet 2005 - 19 août 2004 à 21:28
luck_y6 Messages postés 7 Date d'inscription dimanche 25 juillet 2004 Statut Membre Dernière intervention 28 juillet 2005 - 22 août 2004 à 16:12
Bonjour,

pour faire court voici mon code :

If IsObject(Session("Client_conn")) Then
Set conn = Session("Client_conn")
Else
' Path long de la base de données
dbPath = Server.MapPath(".")
' Création de l'objet permettant la connexion
Set Conn = Server.CreateObject("ADODB.Connection")
' Connexion
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & dbPath & "/BD/bdtest.mdb"
Set Session("Client_conn") = conn
End If

'Ecriture de la requete pour la table Adhesion
req="update client set mdp='s' where NUM='A';"

'Création du RecordSet
Set oRst = Server.CreateObject("ADODB.Recordset")

'Surveillance des erreurs
On Error Resume Next

'Ouverture du recorset et execution de la requete sql
'oRst.Open Req, Conn
Conn.Execute req
If err Then
Response.Write Err.description
else
%>Mot de passe modifié</P<%
End If

'Fin de la gestion des erreurs
On Error goto 0

ET voici mon erreur :
Microsoft][Pilote ODBC Microsoft Access] Trop peu de paramètres. 2 attendu

Vraiment je ne comprends pas pourquoi. J'ai essayé different mode d'ouverture de requete mais cela ne fonctionne guere mieux. SI quelqu'un comprend...

Merci a tous

2 réponses

cs_Jos Messages postés 128 Date d'inscription mardi 26 juin 2001 Statut Membre Dernière intervention 8 février 2005
22 août 2004 à 03:57
Je doute que tu puisses stocker un connection à une bd dans une session. À quelle ligne ton erreur se situe-t-elle?
0
luck_y6 Messages postés 7 Date d'inscription dimanche 25 juillet 2004 Statut Membre Dernière intervention 28 juillet 2005
22 août 2004 à 16:12
Bien, ce ne doit pas etre a ce niveau car je fonctionne avec sur toutes les autres pages et cela fonctionne.

Voici les differentes methodes que j'ai utilisé :

'1 methode
'sql = "SELECT * FROM client WHERE (CT_NUM='" & NUM & "');"
'Rs.Open sql, conn, 1, 4, 1
'Rs.MoveFirst
'Rs("mdp") = Valeur1
'Rs.Update

'resultat
'pas d'erreur mais aucune modification

'2 methode
'sql = "update client set mdp='" & Valeur1 & "' where CT_NUM='" & NUM & "';"
'Rs.Open sql, conn, 1, 4, 1

'resultat
'Microsoft OLE DB Provider for ODBC Drivers error '80004005'
'[Microsoft][Pilote ODBC Microsoft Access] L'opération doit utiliser une requête qui peut être mise à jour.

'3 methode
'sql = "update client set mdp='" & Valeur1 & "' where CT_NUM='" & NUM & "';"
'Conn.execute sql

'resultat
'Microsoft OLE DB Provider for ODBC Drivers error '80004005'
'[Microsoft][Pilote ODBC Microsoft Access] L'opération doit utiliser une requête qui peut être mise à jour.

Voila donc j'ai l'impression que IIS ne permet pas la mise à jour. Qu'en pense tu ?
0
Rejoignez-nous