Problème avec "ExecuteNonQuery"

Résolu
Netlink Messages postés 139 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 12 juillet 2011 - 10 juin 2004 à 12:08
kikodos23 Messages postés 84 Date d'inscription dimanche 1 juillet 2007 Statut Membre Dernière intervention 8 janvier 2013 - 7 janv. 2008 à 17:09
Bonjour,

J'ai un problème pour insérer des données dans ma base Access... Voici mon code :

Sub doInsert(Source As Object, E As EventArgs)
Dim sSQL as string =  "INSERT INTO NewsLetter (prenom, mail) VALUES (@Prenom, @Mail)"
Dim Conn As OleDbConnection = New OleDbConnection(ConfigurationSettings.AppSettings("Connection"))
Dim cmd As New OleDbCommand(sSQL, Conn)
cmd.Parameters.Add(New OleDbParameter("@Prenom", txtprenom.Text))
cmd.Parameters.Add(New OleDbParameter("@Mail", txtmail.Text))
Conn.Open()
cmd.ExecuteNonQuery
Conn.Close()        
label1.Visible = "True"

BindData()
label1.Text = "Vous êtes inscrit à la newsletter"
End Sub


Sur la page Web j'ai deux TextBox, ainsi qu'un boutton qui active ce Sub lorsqu'on clique dessus...

Une fois qu'on a cliqué sur le bouton, je reçois ce message d'erreur :

Excepion Details: System.Data.OleDb.OleDbException: Operation must use an updateable query.

Source Error:

Line 12: cmd.Parameters.Add(New OleDbParameter("@Mail", txtmail.Text))
Line 13: Conn.Open()
Line 14: cmd.ExecuteNonQuery
Line 15: Conn.Close()
Line 16: label1.Visible = "True"

Quelqu'un aurait-il une idée du problème ? Je précise que ce problème a lieu sur le serveur (il tourne sous Windows Server 2003) (en local sous XP je n'ai pas de problème...)

Merci d'avance,
@ bientôt, Mathieu aka Netlink

6 réponses

cs_Crazyht Messages postés 1522 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 21 août 2010 8
11 juin 2004 à 12:01
Extrait du resultat apres recherche sous google :

2. In W2K3 server machine(with iis6) ,yes? The default asp.net workproces
is NetWorkService rather than Machine\aspnet, please have a further check
to see whether you've grant the sufficient permission to this workprocess
account .

3. I've met a former issue similiar with this and it resolved by add the
write permission to the mdb file to Everyone group. I think you may also
have a try on this.


A++

:-p Crazyht :)

[Admin Codes-Sources]
[Membre Developer-Association]

Un programmeur, c'est quelqu'un qui résout pour toi, de façon incompréhensible, un problème que tu ignorais avoir...
3
Netlink Messages postés 139 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 12 juillet 2011
12 juin 2004 à 18:36
Salut Crazyht,

Merci pour tes infos!!!!!!!

J'ai modifié les droits de l'user ASPNET ainsi que les droits d'écriture sur la base, et tout fonctionne à merveille.

Merci encore!

@ bientôt, Mathieu aka Netlink
0
Nightcourrier Messages postés 118 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 28 mars 2008
11 nov. 2004 à 19:50
Bonjours a vous 2.

Je commence en ASp.net et j'ai le meme problème ... ou je vais pour :

add the
write permission to the mdb file to Everyone group

merci de votre aide

Nightcourrier :)
0
Netlink Messages postés 139 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 12 juillet 2011
25 déc. 2004 à 11:10
Salut Nithgcourrier,

Lorsque j'ai eu ce problème, l'application était hébergée sur un serveur mutualisé, j'ai donc écrit un mail à l'hébergeur pour lui demander d'accorder les droits d'écriture sur la base de données.

Sinon, tu fais un click droit sur ta base de données Accès, tu vas dans Propriétés, puis dans l'onglet Sécurité, et là tu ajoutes les groupes avec le droit en écriture. Il me semble que c'est ça !

@ bientôt, Mathieu
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rclfan_the_retour Messages postés 2 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 31 juillet 2007
31 juil. 2007 à 11:49
Merci Netlink, c'était bien ca la soluce. J'ai eu le probleme et ca marche maintenant.
0
kikodos23 Messages postés 84 Date d'inscription dimanche 1 juillet 2007 Statut Membre Dernière intervention 8 janvier 2013 2
7 janv. 2008 à 17:09
Salut tous le monde
j'ai le meme problème le mème probleme avec
"
Line 13: Conn.Open()
Line 14: cmd.ExecuteNonQuery
Line 15: Conn.Close()
ma base de donneé se trouve dans le repertoir C:/ ,comment je peut "add the
write permission to the mdb file to Everyone group" car j'ai pas trouver l'onglet Securité quand j'ai fais un click droit puis proprieté ...
koi faire SVP Merci ...
0
Rejoignez-nous