BASE DONNEE

Signaler
Messages postés
33
Date d'inscription
mardi 9 mars 2004
Statut
Membre
Dernière intervention
14 septembre 2006
-
Messages postés
33
Date d'inscription
mardi 9 mars 2004
Statut
Membre
Dernière intervention
14 septembre 2006
-
Bonjour à tous, voilà mon pb.
dans mon programme j'execute une procedure stokée mais elle n'enregistre pas les donne,
j'utilise un fichier de base de donnee .mdf .
voila mon code :
using

(
SqlConnection cnx=
new
SqlConnection(
"Data Source=.\\SQLEXPRESS;AttachDbFilename=" +
Environment.CurrentDirectory +
"\\Database1.mdf;Integrated Security=True;User Instance=True")){

using (
SqlCommand cmd =
new
SqlCommand(
"AJOUT", cnx)){

cmd.CommandType =

CommandType.StoredProcedure;cmd.Parameters.Add(

new
SqlParameter(
"@nom",txtNom.Text));cmd.Parameters.Add(

new
SqlParameter(
"@prenom", txtPrenom.Text));cmd.Parameters.Add(

new
SqlParameter(
"@fixe", txtTelFixe.Text));cmd.Parameters.Add(

new
SqlParameter(
"mobile", txtTelMobile.Text));cmd.Parameters.Add(

new
SqlParameter(
"@adresse", txtAdresse.Text));cmd.Parameters.Add(

new
SqlParameter(
"@cp", txtCp.Text));cmd.Parameters.Add(

new
SqlParameter(
"@ville", txtVille.Text));cmd.Parameters.Add(

new
SqlParameter(
"@mail", txtMail.Text));

cnx.Open();

cmd.ExecuteNonQuery();

cnx.Close();

}

}

valentin

9 réponses

Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
37
Salut

Quelle est l'erreur?

Est-ce que ta procédure stockée fonctionne directement en base, sans passer par dotnet.?

mobile a perdu son @

Tous tes champs sont de types textes?
Messages postés
33
Date d'inscription
mardi 9 mars 2004
Statut
Membre
Dernière intervention
14 septembre 2006

Si j’exécute ma procédure dans l’explorateur de donnée elle marche bien,


Dans mon programme aussi sauf que les données ne sont pas enregistrées



valentin
Messages postés
1
Date d'inscription
jeudi 14 septembre 2006
Statut
Membre
Dernière intervention
14 septembre 2006

De tête :
cnx.Commit() ou cmd.Commit()

Voili voilà
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
38
hum... c'est une base Access... tu l'as attachée à ton projet...
quand tu dis que tu ne vois pas les modifications... c'est après avoir relancé ton application ?

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
Messages postés
33
Date d'inscription
mardi 9 mars 2004
Statut
Membre
Dernière intervention
14 septembre 2006

ce n'est pas une base Access, c'est un fichier de donnees sqlserver atache(.mdf)
j'ai essayer aussi   SqlTransaction mais sans suces.
valentin
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
38
le problème reste entier... ton fichier mdf est lié à ton projet ou non ?

si oui, à chaque compilation, la version "propre" est copié dans le répertoire bin. Donc tes modifications sont écrasées !

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
Messages postés
33
Date d'inscription
mardi 9 mars 2004
Statut
Membre
Dernière intervention
14 septembre 2006

pourquoi les donnees dêjà existentes ne sont pas écrasée ??

valentin
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
38
parce qu'elles sont enregistrées dans le fichier mdf qui est attaché au projet.

regarde bien le répertoire de ton projet. Tu dois avoir plusieurs version de ta base de données : l'une dans le répertoire de base, une autre dans le répertoire \bin\debug et accessoirement dans le répertoire \bin\release si tu as tenté une compilation en release.

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
Messages postés
33
Date d'inscription
mardi 9 mars 2004
Statut
Membre
Dernière intervention
14 septembre 2006

merci beaucoup pour ton aide.

valentin