vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

ADO.NET / Datenbanken
Update der MySQL-Datenbank über DGV funktioniert nur halbwegs 
Autor: DerCrack
Datum: 17.12.10 20:27

Hallo,

bin neu hier und muss euch gleich mit einem Problem belästigen.

Ich habe ein DataGridView welches per MySQL-Abfrage über eine DataTable gefüllt wird. In diesem DataGridView sollen die Werte von 2 Spalten aktualisiert und über einen MySqlCommandBuilder in die Datenbank zurückgespeichert werden. Das Problem ist, dass wenn ich mehrere Spalten habe bei allen bis auf eine die Werte nicht übernommen werden. Anbei mal das Coding soweit:

Dim conn As MySqlConnection
    Dim da_Adapter As MySqlDataAdapter
    Dim da_Reader As MySqlDataReader
 
    Dim ds_Zeitungskunden As DataSet                        ' DataSet
    Dim dt_Zeitungskunden As DataTable                      ' DataTable ( 
    ' Datentabelle)
    Dim dv_Zeitungskunden As DataView
 
    Sub BrieftermineFürHeuteAusgebenZK()
 
        conn = New MySqlConnection(("server=" & server & ";user=" & user & _
          ";password=" & password & ";database=" & database).ToString)
 
        Try
 
            Try
                da_Adapter = New MySqlDataAdapter("", conn)
 
                SQL_Schreiben.SchreibeTempZKDaten_Datum()
 
                ' @@@@@ Ausführen der Select-Anweisung @@@@@
                da_Adapter.SelectCommand.CommandText = ("....")
 
                da_Adapter.SelectCommand.CommandType = CommandType.Text
 
                'Kontrolle des SQL-Strings
                'MessageBox.Show(Cmd.CommandText)
 
                ' *** DataSet und DataTable-Instanz bilden
                ds_Zeitungskunden = New DataSet()               ' 
                ' DataSet-Instanz bilden
                dt_Zeitungskunden = New DataTable()             ' 
                ' DataTable-Instanz bilden
                ds_Zeitungskunden.Tables.Add(dt_Zeitungskunden)
 
                ' *** Primärschlüssel-Informationen beim Fill mit übernehmen
                da_Adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
                da_Adapter.Fill(dt_Zeitungskunden)                              _
                  ' DataTable füllen
 
                ' *** DataView-Instanz für DataTable bilden
                dv_Zeitungskunden = New DataView(dt_Zeitungskunden)
                'dv.RowFilter = "anzahlanschreibungen = 1"
                dv_Zeitungskunden.Sort = "Kundennummer ASC"
 
                Dim rowcount = dt_Zeitungskunden.Rows.Count
                If rowcount = 0 Then
                    MessageBox.Show("Keine Datensätze gefunden")
                ElseIf rowcount = 1 Then
                    Kundendaten_Ausgeben.Show()
                    ' @@@@@ Fensterüberschrift wird geändert @@@@@
                    Kundendaten_Ausgeben.Text = ("Kundenauswahl: " & rowcount & _
                      " Datensatz gefunden")
                    ' @@@@@ Gefundene Datensätze werden in das DataGrid im 
                    ' Fenster "Brieftermine für Heute ausgeben" geschrieben 
                    ' @@@@@
                    Kundendaten_Ausgeben.CreateZKControls()
                    Kundendaten_Ausgeben.dgv_ZK.DataSource = dv_Zeitungskunden
                    Kundendaten_Ausgeben.dgv_ZK.Refresh()
                    Kundendaten_Ausgeben.dgv_ZK.Show()
 
                Else
                    Kundendaten_Ausgeben.Show()
                    ' @@@@@ Fensterüberschrift wird geändert @@@@@
                    Kundendaten_Ausgeben.Text = ("Kundenauswahl: " & rowcount & _
                      " Datensätze gefunden")
                    ' @@@@@ Gefundene Datensätze werden in das DataGrid im 
                    ' Fenster "Brieftermine für Heute ausgeben" geschrieben 
                    ' @@@@@
                    Kundendaten_Ausgeben.CreateZKControls()
                    Kundendaten_Ausgeben.dgv_ZK.DataSource = dv_Zeitungskunden
                    Kundendaten_Ausgeben.dgv_ZK.Refresh()
                    Kundendaten_Ausgeben.dgv_ZK.Show()
                End If
 
                ' @@@@@ Ausgabe falls Fehler beim Lesen aus der Datenbank 
                ' auftreten @@@@@
            Catch dbreaderror As MySqlException
                MessageBox.Show("Fehler beim Lesen aus der Datenbank: " & _
                  dbreaderror.Message)
            End Try
            ' @@@@@  Ausgabe falls Fehler beim Verbinden mit der Datenbank 
            ' auftreten @@@@@
        Catch dbconnerror As MySqlException
            MessageBox.Show("Fehler beim Verbinden mit der Datenbank: " & _
              dbconnerror.Message)
        Finally
            ' @@@@@ Verbindung zur Datenbank trennen @@@@@
            If conn.State <> ConnectionState.Closed Then conn.Close()
        End Try
 
    End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Update der MySQL-Datenbank über DGV funktioniert nur halbweg...1.346DerCrack17.12.10 20:27
Re: Update der MySQL-Datenbank über DGV funktioniert nur hal...828DerCrack17.12.10 20:28
Re: Update der MySQL-Datenbank über DGV funktioniert nur hal...841ModeratorFZelle18.12.10 13:52
Re: Update der MySQL-Datenbank über DGV funktioniert nur hal...955DerCrack18.12.10 13:58

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel