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

Windows Forms Discussion :

[VB.net] Problème insertion dans table


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 13
    Par défaut [VB.net] Problème insertion dans table
    Bonjour,

    Je rencontre un problème avec ma base de données access dans visual basic
    2005.
    Voilà le code qui me permet d'insérer une ligne dans ma table :
    Dim titre As String
    Dim c As New connexion
    Dim cmd As New OleDbCommand
    Dim prm As New OleDbParameter
    c.ouvrir()
    titre=teval.text 'textbox dans mon formulaire
    cmd.Connection = c.maconnexion
    cmd.CommandType = CommandType.StoredProcedure
    cmd.CommandText = "AjoutEval" 'requete d'ajout créé dans access
    prm.ParameterName = "Titeval" ' paramatre de la requete
    prm.Value = titre
    cmd.Parameters.Add(prm)
    cmd.ExecuteNonQuery()

    End Sub

    Je vous précise que j'ai crée une classe connection dt voici le code:
    Public Class connexion
    Public maconnexion As OleDbConnection

    Public Sub ouvrir()
    maconnexion = New
    OleDbConnection(My.Settings.GESTQUALITEConnectionString)
    Try
    maconnexion.Open()
    Catch ex As OleDbException
    MessageBox.Show(ex.Message)
    End Try
    End Sub

    Public Sub fermer()
    Try
    maconnexion.Close()
    Catch ex As Exception
    MessageBox.Show(ex.Message)
    End Try
    End Sub

    End Class

    A l'exécution tout fonctionne mais lorsque je vérifie dans ma base aucune
    ligne n'a été ajouté. Pourriez vous m'aider à comprendre

    Merci d'avance.

  2. #2
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2006
    Messages : 127
    Par défaut
    Tu peux faire plus simple comme ajout dans une base de donnée Access

    Tu écris ta Commande dans le programme en lui - même.

    Exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Dim Ajout As New OleDb.OleDbCommand("INSERT INTO table VALUES(variable1, ..., ...), MaConnexion)
    Et au fait est ce que tu pourrais préciser ta requête STP ?!

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 13
    Par défaut
    merci de ta réponse ma requete s'appelle AjoutEval voici son code
    INSERT INTO evaluation ( Titre )
    VALUES (Titeval);

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 13
    Par défaut
    sinon g déjà tenté de faire l'ajout en utilisant directement la commande mais le résultat est le meme g aucune erreur mais les lignes ne s'ajoutent pas dans ma base

  5. #5
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2006
    Messages : 127
    Par défaut
    Déjà dans ta requête tu as un problème c'est que dans une requête SQL pour Access la paramètres sont caractériser par des ? donc ta requête va devenir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim Ajout As new OleDb.OleDbCommand("INSERT INTO evaluation ( Titre ) VALUES (?)", c.maconnexion)
    Ensuite pour ton paramètre tu le déclares comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim ParamTitre As New OleDb.OleDbParameter("Titre", OleDb.OleDbType.VarWChar)
    
    ParamTitre.Value = Me.teval.Text ' -> titre (variable inutile)
    Ajout.Paramaters.Add(ParamTitre)
    Cela donne pour finir ce Code là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
             Dim c As New connexion
    Dim Ajout As new OleDb.OleDbCommand("INSERT INTO evaluation ( Titre ) VALUES (?)", c.maconnexion)
    Dim ParamTitre As New OleDb.OleDbParameter("Titre", OleDb.OleDbType.VarWChar)
    
    c.Ouvrir()
    'Ajout du Paramètre après attribution de sa valeur
    ParamTitre.Value = Me.teval.Text ' -> titre (variable inutile)
    Ajout.Paramaters.Add(ParamTitre)
    
    Exécution de la requête
    Ajout.ExecuteNonQuery'
     
    c.Fermer()
    Et là nromalement tu devrais avoir ta ligne d'ajouter.

    Si jamais cela ne fonctionnait pas remplace :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Ajout.ExecuteNonQuery
    par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Try
        Ajout.ExecuteNonQuery
    Catch ex As Exception
        MessageBox.Show("Requête: " & Ajout.CommandText & Chr(13) & ex.ToString)
    Finally
        c.Fermer
    End Try
    
    Voilà, maintenant à toi d'essayer

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 13
    Par défaut
    g testé ta solution g pas d'erreur à l'exécution mais les lignes ne s'ajoutent toujours pas à ma table

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

Discussions similaires

  1. problème insertion dans deux tables liées
    Par ryassinne dans le forum MySQL
    Réponses: 6
    Dernier message: 07/05/2010, 16h58
  2. [VB.net] Problème insertion dans la base Sql
    Par daily14 dans le forum VB.NET
    Réponses: 10
    Dernier message: 25/11/2009, 16h13
  3. [MySQL] Problème insertion dans une table
    Par Timbermatt dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 28/05/2009, 11h34
  4. Réponses: 2
    Dernier message: 25/09/2008, 10h15
  5. [ZEOSLIB] Problème Insertion dans une table
    Par moscovisci dans le forum Bases de données
    Réponses: 1
    Dernier message: 09/06/2005, 12h05

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