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

VB.NET Discussion :

ADO.NET ( add, delete, edit)


Sujet :

VB.NET

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 3
    Points : 4
    Points
    4
    Par défaut ADO.NET ( add, delete, edit)
    bonjour tout le monde ;
    j'ai un problème d'ajout , supp et modification .j'espère que quelqu'un peut me venir en aide
    la table
    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
    create database DBcadre
    go 
     
    use DBcadre 
    go 
    if exists (select 1
                from  sysobjects
               where  id = object_id('CADRE')
                and   type = 'U')
       drop table CADRE
    go
    /*==============================================================*/
    /* Table : CADRE                                                */
    /*==============================================================*/
    create table CADRE (
       NUM_CADRE            int             null,
       NUM_SERIE           varchar(30)                  not null   primary key  ,
       NOM_CADRE            varchar(30)                  null,
       NOM_CARTE          varchar(30)                  null,
       NBRE_CYCLE           varchar(30)               null,
       NBRE_MAX_CYCLE     varchar(30)              null,
       DUREE_DE_VIE         varchar(30)                 NULL,
       DATE_FAB            date                null,
       DATE_MISE_HS         date                 null,
       UF                   varchar(30)                  null,
       LIGNE                varchar(30)                  null,
       PHOTO                image                null,
       NOTE                 varchar(30)                  null,
     
    )
    go


    mon 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
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    Public Class Form1
     
     
     
     
        Dim cpt As String
        Sub New(ByVal str As String)
            '  Cet appel est requis par le Concepteur Windows Form.
            InitializeComponent()
     
            '    Ajoutez une initialisation quelconque après l'appel InitializeComponent().
            cpt = str
        End Sub
     
        Private Sub form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            'TODO*: cette ligne de code charge les données dans la table 'DBcadreDataSet.CADRE'. Vous pouvez la déplacer ou la supprimer selon vos besoins.
            Me.CADRETableAdapter.Fill(Me.DBcadreDataSet.CADRE)
     
     
            If cpt = "A" Then
                CB_NumSerie.DropDownStyle = ComboBoxStyle.Simple
                BTN_Enregistrer.Text = "Ajouter"
            ElseIf cpt = "M" Then
                CB_NumSerie.DropDownStyle = ComboBoxStyle.DropDownList
                BTN_Enregistrer.Text = "Modifier"
            ElseIf cpt = "S" Then
                CB_NumSerie.DropDownStyle = ComboBoxStyle.DropDownList
                BTN_Enregistrer.Text = "Supprimer"
     
            End If
     
     
     
        End Sub
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTN_Sortir.Click
            Me.Close()
        End Sub
     
     
        Private Sub BTN_Enregistrer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTN_Enregistrer.Click
            If BTN_Enregistrer.Text = "Ajouter" Then
                Try
                    cmd.CommandText = "insert into cadre (" & " NUM_CADRE,NUM_SERIE,NOM_CADRE,DUREE_DE_VIE,NBRE_MAX_CYCLE,DATE_FAB,DATE_MISE_HS,UF " & ") VALUES (" & TxtNumCadre.Text & ",' " & CB_NumSerie.Text & "','" & TxtNomCadre.Text & "','" & TxtDuréeVie.Text & "','" & TxtNbreMaxVague.Text & "','" & txtDateFab.Text & "','" & TxtDateHS.Text & "','" & TxtUF.Text & "'" & ")"
                    da.SelectCommand = cmd
                    cmd.Connection = cnx
                    '  da.Fill(ds, "CADRE")
                    Dim nvlg As DataRow
                    nvlg = ds.Tables("CADRE").NewRow
                    nvlg("NUM_CADRE") = TxtNumCadre.Text
                    nvlg(" NUM_SERIE") = CB_NumSerie.Text
                    nvlg("NOM_CADRE") = TxtNomCadre.Text
                    nvlg("NOM_CARTE") = TxtNomCarte.Text
                    nvlg(" DUREE_DE_VIE") = TxtDuréeVie.Text
                    nvlg("NBRE_MAX_CYCLE") = TxtNbreMaxVague.Text
                    nvlg("DATE_FAB ") = txtDateFab.Text
                    nvlg("DATE_MISE_HS ") = TxtDateHS.Text
                    nvlg("UF") = TxtUF.Text
                    ds.Tables("CADRE").Rows.Add(nvlg)
                Catch ex As Exception
                    MsgBox(ex.Message)
     
                End Try
            ElseIf BTN_Enregistrer.Text = "Modifier" Then
                For Each nvlg In ds.Tables("CADRE").Rows
                    If nvlg("Num_serie") = CB_NumSerie.SelectedValue Then
                        nvlg("NUM_CADRE") = TxtNumCadre.Text
                        nvlg("NOM_CADRE") = TxtNomCadre.Text
                        nvlg("NOM_CARTE") = TxtNomCarte.Text
                        nvlg("DUREE_DE_VIE") = TxtDuréeVie.Text
                        nvlg("NBRE_MAX_CYCLE") = TxtNbreMaxVague.Text
                        nvlg("DATE_FAB ") = txtDateFab.Text
                        nvlg("DATE_MISE_HS ") = TxtDateHS.Text
                        nvlg("UF") = TxtUF.Text
     
                    End If
                    cmd.CommandText = "update cadre set Num_cadre='" & TxtNumCadre.Text & "',NOM_CADRE='" & TxtNomCadre.Text & "',DUREE_DE_VIE ='" & TxtDuréeVie.Text & "'NBRE_MAX_CYCLE = " & TxtNbreMaxVague.Text & "'DATE_FAB =" & txtDateFab.Text & "' DATE_MISE_HS =" & TxtDateHS.Text & "' UF= " & TxtUF.Text & "' where NUM_SERIE = " & CB_NumSerie.SelectedValue
                    da.SelectCommand = cmd
                    cmd.Connection = cnx
                    '  da.Fill(ds, "CADRE")
                Next
            Else : BTN_Enregistrer.Text = "Supprimer "
     
                If MessageBox.Show("voulez vous vraiment supprimer l'enregistrement", "confirmation", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
                    For Each nvlg In ds.Tables("CADRE").Rows
                        If nvlg("NUM_SERIE") = CB_NumSerie.SelectedValue Then
                            cmd.CommandText = "delete from  CADRE where NUM_SERIE = " & CB_NumSerie.SelectedValue
                            da.SelectCommand = cmd
                            cmd.Connection = cnx
                            da.Fill(ds, "CADRE")
                            ds.Tables("CADRE").Rows.Remove(nvlg)
     
                            Exit For
                        End If
                        TxtNomCadre.Text = Nothing
                        TxtNumCadre.Text = Nothing
                        TxtUF.Text = Nothing
                        TxtNomCarte.Text = Nothing
                        TxtDuréeVie = Nothing
                        TxtNbreMaxVague.Text = Nothing
     
                    Next
                Else : MessageBox.Show("suppression annuleé")
                End If
     
            End If
        End Sub
     
        Private Sub CB_NumSerie_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
     
            For Each nvlg In ds.Tables("CADRE").Rows
                If nvlg("NUM_SERIE") = CB_NumSerie.SelectedValue Then
                    TxtNumCadre.Text = nvlg("NUM_CADRE")
                    TxtNomCadre.Text = nvlg("NOM_CADRE")
                    TxtNomCarte.Text = nvlg("NOM_CARTE")
                    TxtDuréeVie.Text = nvlg(" DUREE_DE_VIE")
                    TxtNbreMaxVague.Text = nvlg("NBRE_MAX_CYCLE")
                    txtDateFab.Text = nvlg("DATE_FAB")
                    TxtDateHS.Text = nvlg("DATE_MISE_HS")
                    TxtUF.Text = nvlg("UF")
     
                End If
            Next
        End Sub
    End Class
    j'arrive pas a remplir les champs lors de la sélection d'un num série
    ni a faire l'ajout ou la suppression ou la modification

    lors de l'ajout par exp un message d'erreur indique que le num serie n'appartient pas à la table cadre !!!


    quelqu'un peut m'aider

  2. #2
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Tu as un espace au début de ton nom de colonne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nvlg(" NUM_SERIE") = CB_NumSerie.Text
    Cela vient probablement de là.

    Pareil pour d'autres colonnes.

    Corrige déjà cela.

    Au passage, il vaut mieux utiliser des requêtes paramétrées. C'est le minimum. Sinon, perso, je préfère les procédures stockées.

    C'est plus sûr à plein d’égards.
    Kropernic

Discussions similaires

  1. Edition d'une base de données access en utilisant ado.net
    Par sidisadmir dans le forum ADO.NET
    Réponses: 2
    Dernier message: 10/02/2011, 12h56
  2. Réponses: 3
    Dernier message: 05/01/2009, 16h12
  3. ADO.NET INSERT DELETE UPDATE refresh des composants graphic
    Par jeriko dans le forum Accès aux données
    Réponses: 5
    Dernier message: 15/01/2007, 15h17
  4. [ADO.NET]Apparament mon delete n'est pas mis à jour.Quoi que?
    Par lrx94 dans le forum Accès aux données
    Réponses: 4
    Dernier message: 05/12/2006, 15h33
  5. [ADO.Net][C#] Comment recupérer infos DataRowState.Deleted ?
    Par titoux_fr dans le forum Accès aux données
    Réponses: 2
    Dernier message: 10/02/2006, 11h41

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