IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

ajout et modification des données


Sujet :

C#

  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 106
    Par défaut ajout et modification des données
    Bonjour,
    j'ai un formulaire(+bindingNavigator) qui me permet d'afficher correctement les informations d'une table de la base de donnée mais lorsque je modifie ou j'ajoute des données et je vérifie la base de donnée je trouve qu'ils n'ont pas été enregistrés..

    merci pour votre aide

  2. #2
    Membre émérite
    Avatar de Gurdil le nain
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 468
    Par défaut
    Montre nous ton code d'ajout/modification de données

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 106
    Par défaut
    voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    private void enregistrerToolStripMenuItem_Click(object sender, EventArgs e)
            {
                mabaseDataSet.etudiant[0].ID = "5";
                mabaseDataSet.etudiant[0].nom = "khavile";
                mabaseDataSet.etudiant[0].prenom = "bekaye";
     
            }

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 147
    Par défaut
    Le dataSet est un objet stocké en mémoire, pour mettre tes valeurs dans ta base de donnée il faut utiliser des requêtes SLQ, UPDATE ou INSERT,
    du type:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE maTable SET nom='khavile' , prenom='bekaye' WHERE id=5
    (au préalable il faut ouvrir une connection, définir une commande,etc du doit pouvoir facilement trouver des exemples en cherchant sur le net)

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 106
    Par défaut
    Citation Envoyé par davjan Voir le message
    Le dataSet est un objet stocké en mémoire, pour mettre tes valeurs dans ta base de donnée il faut utiliser des requêtes SLQ, UPDATE ou INSERT,

    (au préalable il faut ouvrir une connection, définir une commande,etc du doit pouvoir facilement trouver des exemples en cherchant sur le net)
    pour la requête SQL je lai déjà crée à partir du TableAdapter(clic droit =>Ajouter
    une requête sql), après pour l'insertion j'ai ajouté le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mabaseDataSet.etudiant[0].ID = "5";
    exactement comme indiqué dans la documentation du MSDN

    cordially

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 147
    Par défaut
    Au temps pour moi.
    regardeici c'est un exemple qui peut être peut aider.
    Je n'utilise jamais le SqlDataAdapter pour insérer des données mais peut-être ai-je tord.

    Cordialement.

  7. #7
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 106
    Par défaut
    merci pour le lien,
    voici la requéte TableAdapter que j'ai crée(création automatique à l'aide de l'assistant), est-elle correcte ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO [etudiant] ([ID], [nom], [prenom], [age]) VALUES (@p1, @p2, @p3, @p4)
    cordially

  8. #8
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 147
    Par défaut
    Elle est syntaxiquement correct (forcément si elle vient de l'assistant), maintenant il faut que les paramètres soit bien ajouté.
    Je pense de cette manière
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
       adapter.UpdateCommand.Parameters.Add("@id", SqlDbType.Int, 10, "id");
     
                    DataRow newRow = mabaseDataSet.etudiant[0].NewRow();
                    newRow["id"] = laValeurDeID;
                    mabaseDataSet.etudiant[0].Rows.Add(newRow);
                    ...
     
     adapter.Update( mabaseDataSet.etudiant[0]);
    ca c'est si tu veux ajouter un enregistrement, sinon tu modifie juste la valeur des colonnes de la bonne ligne de ta table.

    Cordialement

  9. #9
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 106
    Par défaut
    Bonjour,
    Apparemment pour que ça marche il faut créer une instance du TableAdapter et exécuter la requête en ajoutant le code suivant à
    la méthode à partir de laquelle on doit exécuter le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    SqlConnection sqlConnection1 = new SqlConnection("Your Connection String");
    SqlCommand cmd = new SqlCommand();
    SqlDataReader reader;
    
    cmd.CommandText = "SELECT * FROM Customers";
    cmd.CommandType = CommandType.Text;
    cmd.Connection = sqlConnection1;
    
    sqlConnection1.Open();
    
    reader = cmd.ExecuteReader();
    // Data is accessible through the DataReader object here.
    
    sqlConnection1.Close();
    en faite ma question c'est qu'est ce que je dois mettre dans ("Your Connection String")?

    merci d'avance pour votre aide

  10. #10
    Membre très actif
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2011
    Messages
    457
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2011
    Messages : 457
    Par défaut
    il faut mettre :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string connectionstring = "Data Source=.\\SQLEXPRESS;AttachDbFilename=" + cur + ";Integrated Security=True;Connect Timeout=30;User Instance=True";
    avec cur est variable de type string pour connaitre le path du ton database
    exemple "

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string cur = @"C:\Users\............\Documents\mesdatabases\NORTHWND.MDF";

  11. #11
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 106
    Par défaut
    j'ai mis:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SqlConnection BaseProjet2ConnectionString = new SqlConnection(string connectionstring = "Data Source=.\\SQLEXPRESS;AttachDbFilename=" + @"C:\Documents and Settings\khavile\Mes documents\BaseProjet2.sdf" + ";Integrated Security=True;Connect Timeout=30;User Instance=True";);
    ça m'a généré 2 erreurs:
    - Terme d'expression non valide ')'
    - Terme d'expression non valide 'string'

  12. #12
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 147
    Par défaut
    il faut mettre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SqlConnection BaseProjet2ConnectionString = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=" + @"C:\Documents and Settings\khavile\Mes documents\BaseProjet2.sdf" + ";Integrated Security=True;Connect Timeout=30;User Instance=True";

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 27/08/2014, 21h32
  2. [JTable] Interdire la modification des données ?
    Par Cyborg289 dans le forum Composants
    Réponses: 7
    Dernier message: 25/02/2013, 10h40
  3. Réponses: 6
    Dernier message: 03/06/2010, 22h35
  4. Modification des données impossible
    Par Virgile59 dans le forum Access
    Réponses: 8
    Dernier message: 03/03/2006, 14h41
  5. Réponses: 6
    Dernier message: 15/02/2006, 14h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo