vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 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

Visual-Basic Einsteiger
Re: Speicher Freigeben 
Autor: malich
Datum: 07.03.04 17:01

Hi,

ich bin vor geraumer Zeit auf das gleiche Problem gestoßen.
Der Versuch mit dem Autor Kontakt auf zunehmen verlief leider im Sand.

Da aber Glücklicherweise die Klassenmodule im Paket enthalten sind besteht aber doch noch Hoffnung.

Was liegt also näher als eine Sub einzufügen, die zwar einen Query ausführt, im Gegensatz zum Execute aber kein Recordset zurück liefert.

Dazu wird eine neue Sub ExecuteOnly in das Klassenmodul MYSQL_CONNECTION eingefügt.

Public Sub ExecuteOnly(ByVal sSQL As String, _
           Optional ByRef lRecordsAffected As Long = 0)
 
  If Me.State = MY_CONN_CLOSED Then Exit Sub
  If Trim(sSQL) = "" Then Exit Sub
 
  If mysql_query(mlMYSQL, sSQL) <> 0 Then
    CheckForError
  Else
    lRecordsAffected = mysql_affected_rows(mlMYSQL)
  End If
End Sub
Danach einfach die DLL neu kompilieren und schon funzts...
Einen Vergleich zwischen Execute und ExecuteOnly habe ich mit unten stehendem Code durchgeführt...
For c = 1 To 100000
  'mySQL.Execute "INSERT INTO tests (test) VALUES('test')"
  'mySQL.ExecuteOnly "INSERT INTO tests (test) VALUES('test')"
Next c
... mit dem Ergebnis, daß die Execute-Version in 81 Sekunden durchlief und dabei 55.226 kB Speicher nutzt.
Die ExecuteOnly Variante lief in 70 Sekunden und benötigte nur 104 kB.
Damit fällt die Speichernutzung mit kanpp 0,2% gegenüber dem Execute doch etwas genügsamer aus.

Nun können getrost auch größere Datenmengen verarbeitet werden und das zudem etwas schneller.

Gruß,
Jürgen
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Speicher Freigeben997CrazyMan07.01.04 22:46
Re: Speicher Freigeben549ModeratorDieter07.01.04 23:25
Re: Speicher Freigeben581CrazyMan07.01.04 23:29
Re: Speicher Freigeben633ModeratorDieter07.01.04 23:33
Re: Speicher Freigeben704malich07.03.04 17:01

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