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

Accès aux données Discussion :

intersaction dans base de données


Sujet :

Accès aux données

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2010
    Messages : 47
    Points : 38
    Points
    38
    Par défaut intersaction dans base de données
    Bonjour à tous,

    je pense que je dois être arrivé a saturation de VB.NET pour le moment car plus je lis de tuto moins cela deviens compréhensible pour moi, je m'explique.

    je suis en train de créé un programme pour un ami qui va gere ces clients, factures, devis, ect ...

    j'ai deja reussi a recuperer sa liste de clients et afficher les infos du clients quand je clique dessus

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    'variable'
        'Autre'
        Public DBMysql As New MySqlConnection
        Public CmdLogin, CmdModifClient As MySqlCommand
        Public CmdVisuInfoClient As MySqlCommand
        Public DRModifClient As MySqlDataReader
        Public DRVisuInfoClient As MySqlDataReader
        Public DSClients As New DataSet("clients")
     
        'String'
        Public Nom As String
        Public Login As String
        Public TextSql, TextRqt As String
        Public SelectClient As String
     
        'Integer'
        Public StartupClient As Integer
     
     
    'connexion a la base MYSQL'
    Try
                    If DBMysql.State = ConnectionState.Closed Then
                        DBMysql.ConnectionString = ConnectString
                        DBMysql.Open()
                    End If
     
                Catch myerror As Exception
                    MessageBox.Show("Connexion impossible, veuillez contacter votre administrateur", "Erreur de connexion", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
                End Try
     
    'affichage des infos dans une grid'
     
    Dim AdaptClients As New MySqlDataAdapter(TextSql, DBMysql)
            AdaptClients.Fill(DSClients, "clients")
            Dim dv As DataView
            dv = New DataView(DSClients.Tables(0), TextRqt, "refclient asc", DataViewRowState.CurrentRows)
            Grid1.DataSource = dv
    ensuite quand le client est selectionne je recupere son numéro de client dans une variable et pour effectuer les modifications, je charge toutes ses données dans une nouvelles feuilles et je remplis les textboxs (si je clique sur le bouton modifier client )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    'recuperation du numero de client'
    SelectClient = Grid1.CurrentRow.Cells("refclient").Value
     
     
    'chargement de la nouvelles feuille et recuperation des données + affichage'
    TextSql = "select * from clients where refclient = '" & SelectClient & "'"
     
            Try
     
                CmdModifClient = New MySqlCommand(TextSql, DBMysql)
                DRModifClient = CmdModifClient.ExecuteReader
     
                DRModifClient.Read()
     
    'remplissage textbox + mise en forme'
     
                DRModifClient.Close()
     
            Catch ex As Exception
                MessageBox.Show("Impossible d'établir la connection à la base - " & ex.Message)
            End Try
    le remplissage fonctionne

    mon problème étant de sauvegarder les modifications dans la base de données, alors j'ai déja la requete sql prète mais je ne voit pas comment la transmettre a ma base mysql afin d'excuter cette commande sql

    j'ai lus les des tutos ici et ailleurs et tous le monde parle de DataAdaptateur puis de DataReader et d'autres d'injection SQL, ... en bref je suis complètement pomé !

    je souhaiterai juste savoir si :
    1°) ma méthode est bonne si pas que dois-je changer ?
    2°) si c'est bon comment je fait executer cette p... de requete par la base de donnée mysql

    merci de votre aide !

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2010
    Messages : 47
    Points : 38
    Points
    38
    Par défaut
    voici, après une quantité de jour de recherche infructueux, la réponse tant attendue

    IL FAUT PASSER par un MysqlDataAdapter pour faire des requetes sql qui modifie la base de données (insert, update, delete) et le dataset fait automatiquement le lien avec la BDD

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Dim Adaptclients As New MySqlDataAdapter(TextSql, DBMysql)
    Adaptclients.Fill(DSClients, "clients")

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

Discussions similaires

  1. stockage de photos dans base de données ou dans un répertoir
    Par papy_tergnier dans le forum PostgreSQL
    Réponses: 9
    Dernier message: 08/12/2005, 16h22
  2. Réponses: 9
    Dernier message: 13/10/2005, 18h24
  3. [VB.NET]Champ image dans base de donnée access
    Par dankes dans le forum Windows Forms
    Réponses: 10
    Dernier message: 06/10/2005, 15h31
  4. [VB.NET] filtre dans base de donnée
    Par speedtug dans le forum Windows Forms
    Réponses: 7
    Dernier message: 21/09/2005, 17h12
  5. Réponses: 8
    Dernier message: 11/05/2005, 14h48

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