Hallo
Ich möchte diverse Controls (Textboxen, NumericUpDown, Checkbox, ComboBox) per BindingSource an ein DataTable binden. Speichern möchte ich mit DataAdapter.update. Leider klappt das nicht. Das DataTable wird zwar richtig geändert aber die Daten werden nicht in die Datenbank geschrieben. Was muss ich ändern, dass das klappt?Public Class frmOptionen
Dim dtOptionen As New DataTable("Optionen")
Dim bs As New BindingSource
Dim da As MySqlDataAdapter
Dim cn As New MySqlConnection
Dim constr As String = New dllAppDirect.ConnDLL().ConnString( _
clsBenutzerDaten.GetInstance.IntDatenBank)
Private Sub frmOptionen_Load(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles MyBase.Load
Me.MdiParent = frmMain
Try
cn.ConnectionString = constr
cn.Open()
Dim comsql As New MySqlCommand
Dim str As String = "select parameter_sfkv_id, parameter_typ_id, " _
& _
"parameter_id, " & _
"wert, " & _
"beschreibung " & _
"from parameter_sfkv " & _
"where parameter_typ_id = 1 or " & _
"parameter_typ_id = 3 or " & _
"parameter_typ_id = 4 or " & _
"parameter_typ_id = 5 or " & _
"parameter_typ_id = 9 or " & _
"parameter_typ_id = 10"
da = New MySqlDataAdapter(str, cn)
dtOptionen.Clear()
da.Fill(dtOptionen)
bs.DataSource = dtOptionen
For Each row As DataRow In dtOptionen.Rows
If row.Item("parameter_typ_id") = 1 And row.Item( _
"parameter_id") = 1 Then
nudSenioren.DataBindings.Add(("Text"), bs.Current, "wert")
End If
If row.Item("parameter_typ_id") = 1 And row.Item( _
"parameter_id") = 2 Then
nudVeteranen.DataBindings.Add("Text", bs.Current, "wert")
End If
If row.Item("parameter_typ_id") = 1 And row.Item( _
"parameter_id") = 3 Then
nudSeniorinnen.DataBindings.Add("Text", bs.Current, "wert")
End If
If row.Item("parameter_typ_id") = 1 And row.Item( _
"parameter_id") = 4 Then
nudVeteraninnen.DataBindings.Add("Text", bs.Current, "wert")
End If
If row.Item("parameter_typ_id") = 1 And row.Item( _
"parameter_id") = 5 Then
nudGratulationZeitung.DataBindings.Add("Text", bs.Current, _
"wert")
End If
If row.Item("parameter_typ_id") = 3 And row.Item( _
"parameter_id") = 1 Then
txtPfadFTP.DataBindings.Add("Text", bs.Current, "wert")
End If
If row.Item("parameter_typ_id") = 4 And row.Item( _
"parameter_id") = 1 Then
nudMindestVersion.DataBindings.Add("Text", bs.Current, _
"wert")
End If
If row.Item("parameter_typ_id") = 5 And row.Item( _
"parameter_id") = 1 Then
txtLoginmeldung.DataBindings.Add("Text", bs.Current, "wert")
End If
If row.Item("parameter_typ_id") = 5 And row.Item( _
"parameter_id") = 2 Then
chkLoginSperre.DataBindings.Add("Text", bs.Current, "wert")
End If
bs.MoveNext()
Next
Catch ex As Exception
Call ErrorLog(ex, Me.Name, "frmOptionen_Load")
Finally
cn.Close()
End Try
End Sub
Private Sub cmdOK_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles cmdOK.Click
Dim cb As MySqlCommandBuilder = New MySqlCommandBuilder(da)
cn.ConnectionString = constr
cn.Open()
Dim com As MySqlCommand = cb.GetUpdateCommand
bs.EndEdit()
da.Update(dtOptionen)
cn.Close()
End Sub
End Class Gruss zumbi |