Liebe Leute,
ich verwende folgenden Code um Datenzeilen aus einer .mdb Datenbank zu löschen, wenn diese vorhanden sind:
Das funktioniert soweit ganz gut und zu 99,9% immer auch sehr schnell innerhalb von wenigen Millisekunden.
Hie und da kommt es jedoch vor, dass der DELETE Befehl 10-30 Sekunden den Task anhält. Besonders dann, wenn die Datenbank schon etwas größer ist und ich darüber übers Netzwerk zugreife (5 GBit LAN). Ich habe aber kein Muster herausfinden können, wonach diese "Denkpausen" auftreten. Bei 100 Zugriffen passt es, beim 101 nicht (so in etwas die Musterverteilung).
Dazu nun meine Frage. Macht es einen Unterschied ob ich in meinem Code
oder
verwende? (Unterschied ist der Stern nach DELETE).
Hat jemand eine Idee, warum diese Verzögerungen hie und da auftreten? Macht die Datenbank da irgend eine Rekonfiguration oder so?
LG Roland
ich verwende folgenden Code um Datenzeilen aus einer .mdb Datenbank zu löschen, wenn diese vorhanden sind:
VB.NET-Quellcode
- Dim conn As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Path.Combine(BONitERP2_DatenOrdner, "Auftraege_DB.erp2") & "; Jet OLEDB:Database Password=" & DatenbankPasswort & ";")
- Dim cmd As New OleDbCommand
- Dim sql As String
- cmd.Connection = conn
- conn.Open()
- sql = "SELECT COUNT(auftragsnummer) FROM auftrag WHERE auftragsnummer='" + TempAuftragsNummer + "'"
- cmd = New OleDbCommand(sql, conn)
- Dim existiert As Long = CLng(cmd.ExecuteScalar())
- If existiert <> 0 Then
- sql = "DELETE FROM artikel WHERE auftragsnummer='" + TempAuftragsNummer + "';"
- cmd = New OleDbCommand(sql, conn)
- cmd.ExecuteNonQuery()
- End If
Das funktioniert soweit ganz gut und zu 99,9% immer auch sehr schnell innerhalb von wenigen Millisekunden.
Hie und da kommt es jedoch vor, dass der DELETE Befehl 10-30 Sekunden den Task anhält. Besonders dann, wenn die Datenbank schon etwas größer ist und ich darüber übers Netzwerk zugreife (5 GBit LAN). Ich habe aber kein Muster herausfinden können, wonach diese "Denkpausen" auftreten. Bei 100 Zugriffen passt es, beim 101 nicht (so in etwas die Musterverteilung).
Dazu nun meine Frage. Macht es einen Unterschied ob ich in meinem Code
oder
verwende? (Unterschied ist der Stern nach DELETE).
Hat jemand eine Idee, warum diese Verzögerungen hie und da auftreten? Macht die Datenbank da irgend eine Rekonfiguration oder so?
LG Roland
Liebe Grüße
Roland Berghöfer
Meine aktuellen und kostenlos verwendbaren Tools (mit VB.NET erstellt): freeremarkabletools.com | priconman.com | SimpleCalendar | AudibleTouch | BOComponent.com | bonit.at
Roland Berghöfer
Meine aktuellen und kostenlos verwendbaren Tools (mit VB.NET erstellt): freeremarkabletools.com | priconman.com | SimpleCalendar | AudibleTouch | BOComponent.com | bonit.at