VB.NET Datatables Geschwindigkeit

tombo82

Mitglied
Hallo, hab n geschwindigkeitsproblem...
Ich erzeuge mir aus 2 Tabellen ( je eine DBF und eine MySQL Tabelle) 2 Datatables

nun füge ich in dem "DBF Table" eine Spalte ein, diese ist leer.
Nun vergleiche ich die beiden Tables, und wenn die Menrv ´s in beiden Datatables vorhanden ist,
soll ein bestimmter Wert aus dem "Mysql table" genommen werden, ansonsten ein best. wert aus dem DBF Table...

läuft im FormLoad:
Code:
 Dim con As New System.Data.Odbc.OdbcConnection("Driver={MySQL ODBC 3.51 Driver};Server=localhost;Port=3306;Database=DB;User=admin; Password=XXXXXXX;Option=3;")
        If con.State = ConnectionState.Closed Then
            con.Open()
        End If
        Dim adp As New System.Data.Odbc.OdbcDataAdapter(selectCommand, con)
        adp.Fill(mysqltable)



For a = 0 To dbasetable.Rows.Count - 1
            menrv = dbasetable.Rows(a).Item(0).ToString
            For i As Integer = 0 To mysqltable.Rows.Count - 1
                menrvmysql = mysqltable.Rows(i).Item(0).ToString
                If menrv = menrvmysql Then
                    DataGridView1.Rows(a).Cells.Item(2).Value = mysqltable.Rows(i).Item(1).ToString
                    DataGridView1.CurrentRow.Cells.Item(0).Style.BackColor = Color.GreenYellow
                    DataGridView1.CurrentRow.Cells.Item(1).Style.BackColor = Color.GreenYellow
                    DataGridView1.CurrentRow.Cells.Item(2).Style.BackColor = Color.GreenYellow
                Else
                    dbasetable.Rows(a).Item(2) = dbasetable.Rows(a).Item(1)
                End If
            Next

        Next

ich hab das Problem schon soweit isoliert, das ich weiß das es
an der Zeile: "dbasetable.Rows(a).Item(2) = dbasetable.Rows(a).Item(1)" liegt, (die vorherige Zeile beim letzten Endif)
aber das dauert tierisch lange bis die Form geladen wird, wenn ich die Zeile nicht auskommentiere...
 

Neue Beiträge

Zurück