Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : probleme d'ajout d'une ligne avec dataset [ Divers / General ] (gargourifahmi)

dimanche 12 novembre 2006 à 17:12:34 | probleme d'ajout d'une ligne avec dataset

gargourifahmi

J'ai telechargé un code source de l'application access et ado.net et j'ai essayer de faire les modification necessaire pour l'adapter a sql server.
Resultat:toutes les procedures marchent sauf celle de l'ajout d'une ligne,une exception "erreur systeme" est generée lorsque j'essaie d'enregistrer la ligne que je voulais ajouter et lexecution s'arrete au niveau de l'instruction d'Update du dataadapter.
J'ai fait toutes les verifications que je connaisse mais le probleme persiste.
Aidez moi SVP...
NB:toutes  les procedures sont faites  par la methode du dataset et dataadapter.
Merci d'avance.

lundi 13 novembre 2006 à 18:53:30 | Re : probleme d'ajout d'une ligne avec dataset

kazer04

envoie le bout de code qui bug

lundi 13 novembre 2006 à 18:54:35 | Re : probleme d'ajout d'une ligne avec dataset

kazer04

tu peu le faire en message

lundi 13 novembre 2006 à 19:38:25 | Re : probleme d'ajout d'une ligne avec dataset

gargourifahmi

Private Sub btnenr_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnenr.Click
        cnx.Open()
        sql = "select * from test"
        cmd = New SqlCommand(sql)
        dta = New SqlDataAdapter(cmd)
        cmd.Connection() = cnx
        'si un champ n'est pas rempli fin de procédure
        If Me.txtnom.Text = "" Or _
           Me.txtprenom.Text = "" Or _
           Me.txtjob.Text = "" Then

            MessageBox.Show("Vous devez remplir tous les champs !", "Erreur...", MessageBoxButtons.OK, MessageBoxIcon.Error)

            Me.txtnom.Focus()

            Exit Sub

        End If
        dta.InsertCommand = New SqlCommand("insert into test(reference,nom,prenom,emploi) Values (@reference,@nom,@prenom,@emploi",cnx)
        dta.InsertCommand.Parameters.Add("@reference", SqlDbType.Decimal, 9, "reference")
        dta.InsertCommand.Parameters.Add("@nom", SqlDbType.Text, 16, "nom")
        dta.InsertCommand.Parameters.Add("@prenom", SqlDbType.Text, 16, "prenom")
        dta.InsertCommand.Parameters.Add("@emploi", SqlDbType.Text, 16, "emploi")
        'cr?tion d'une nouvelle ligne avec les données des textbox

        dtr = dts.Tables("test").NewRow()
        dtr("nom") = Me.txtnom.Text
        dtr("prenom") = Me.txtprenom.Text
        dtr("emploi") = Me.txtjob.Text

        'ajout de la ligne dans le DataSet
        dts.Tables("test").Rows.Add(dtr)

        'création et exécution du commandbuilder
        'pour mettre à jour le DataAdapter

        cmdb = New SqlCommandBuilder(dta)


        'mise à jour des données du DataAdapter
        'à partir du commandbuilder
        dta.Update(dts, "test")  "c'est ici que l'execution genere l'erreure systeme

        'on vide le dataset pour le recréer avec
        'les nouvelles données

        dts.Clear()
        dta.Fill(dts, "test")
        dtt = dts.Tables("test")

        'mise à jour de la datagrid
        DataGrid1.SetDataBinding(dts, "test")


        'aller au début du fichier
        rownum = 0

        'affichage des données dans les texbox
        Me.txtref.Text = dtt.Rows(rownum).Item("reference")
        Me.txtnom.Text = dtt.Rows(rownum).Item("nom")
        Me.txtprenom.Text = dtt.Rows(rownum).Item("prenom")
        Me.txtjob.Text = dtt.Rows(rownum).Item("emploi")

        'activation des boutons
        btnp.Enabled = True         'premier
        btnprec.Enabled = True      'précédent
        btnsui.Enabled = True       'suivant
        btnder.Enabled = True       'dernier

        btnmod.Enabled = True
        btnsup.Enabled = True

        btnajou.Enabled = True
        btnenr.Enabled = False      'valider

        btnajou.Text = "Ajouter"

        cnx.Close()


    End Sub

RQ: ce code est pris des codes source du site avec comme j'avais dit des modification
afin de l'adapter a sql server.



jeudi 24 avril 2008 à 18:15:16 | Re : probleme d'ajout d'une ligne avec dataset

l0r3nz1

en remplacant:
dad.Update(dst, "test")  
par:
        Try
            If dst.HasChanges Then
                dad.ContinueUpdateOnError = True
                MsgBox(" maj : " & dad.Update(dst, table)) 'Update requiert un UpdateCommand valide lors du passage de la collection DataRow avec des lignes modifiées.
            Else
                MsgBox("aucun changement")
            End If

        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try

tu résoud une partie du problemme.



Cette discussion est classé dans : ligne, probleme, dataset, ajout, procedures


Répondre à ce message

Sujets en rapport avec ce message

probleme avec SQL serveur (ajout suppression) [ par julbar ] Comment faire pour ajouter dans une base sql serveur (programation client serveur) à partir d'un poste client?J'arrive à consulter avec le data et les Need help ! probleme avec un grid svp [ par Angelus ] salut,j'ai un soucis avec un grid, au chargement de ma form, j'ai des données qui s'affichent dans ma grid, le problème étant que lorsque je vais sur JUST A PETIT PROBLEME DE TABLEAU [ par PtitJeoJeo ] Bonjour tout le monde !Alors voilà : j'ai un prblème :Je voudrais savoir comment sélectionner tous le contenu d'un tableau d'un seul coupParceque moi JUST A PETIT PROBLEME DE TABLEAU [ par PtitJeoJeo ] Bonjour tout le monde !Alors voilà : j'ai un prblème :Je voudrais savoir comment sélectionner tous le contenu d'un tableau d'un seul coupParceque moi JUST A PETIT PROBLEME DE TABLEAU [ par PtitJeoJeo ] Bonjour tout le monde !Alors voilà : j'ai un prblème :Je voudrais savoir comment sélectionner tous le contenu d'un tableau d'un seul coupParceque moi Comment choisir la ligne d'affichage dans un form [ par kawounet ] voila en fait j'ai un petit probleme tout bete mais qui me pause probleme: je voudrais bien savoir comment peut t'on preciser qu'un texte apparaisse à Probleme tatillon sur un TXT.. ecrire a une ligne precise. [ par daerlnaxe ] j'aimerai savoir comment ecrire a une ligne precise ou apres un mot précis dans un fichier txt... merci. Probleme de somme avec MSHFlexGrid [ par mistermik ] Bonjour a tous, j ai un petit probleme d' addition. En fait j' ai un MSHFlexGrid qui contient 2 colones et je voudrais pour additionne le montant de c MSHFlexGrid Probleme [ par Kyler ] Voila j'utilisai un msflexgrid et quand j'ai pris une mshflexgrid avec 1 colones et 1 lignes fixent les information dans la colone fixe sont visible m probleme d'ajout,modification et supression [ par tipou ] Bonjour j'ai fait un formulaire a partir du wizard avec une base de donnee access au debut tout fonctionnait bien mais a force de modifier le formulai


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,452 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.