Die Funktionen für die Arbeit mit Datenbanken basieren auf der beliebten und einfach zu bedienende SQLite Engine. Die bequeme Eigenschaft dieser Engine besteht darin, dass sich die gesamte Datenbank in einer einzigen Datei auf der Festplatte des Nutzer-PCs befindet.
Die Funktionen ermöglichen das bequeme Erstellen von Tabellen, das Hinzufügen von Daten, die Durchführung von Änderungen und die Arbeit mit Stichproben über den einfachen SQL-Anfragen:
Die Funktionen für die Arbeit mit Datenbanken ermöglichen es, die sich am häufigsten wiederholenden Operationen zur Behandlung großer Datenfelder durch SQL-Anfragen zu ersetzen, so dass es oft möglich ist, die Aufrufe DatenbankAusführen/DatenbankVorbereiten zu verwenden, anstatt komplexe Schleifen und Vergleiche zu programmieren. Verwenden Sie die Funktion DatabaseReadBind, um ganz einfach die Abfrageergebnisse in einer vorgefertigten Struktur zu erhalten. Die Funktion ermöglicht das Lesen aller Datensatzfelder auf einmal innerhalb eines einzigen Aufrufs.
Um das Lesen, Schreiben und Modifizieren zu beschleunigen, kann eine Datenbank mit dem Flag DATABASE_OPEN_MEMORY im RAM geöffnet/angelegt werden, obwohl eine solche Datenbank nur für eine bestimmte Anwendung verfügbar ist und nicht gemeinsam genutzt wird. Bei der Arbeit mit Datenbanken, die sich auf der Festplatte befinden, sollten Einfügungen/Änderungen von Massendaten in Transaktionen mit DatabaseTransactionBegin/DatabaseTransactionCommit/DatabaseTransactionRollback umhüllt werden. Dies beschleunigt den Prozess um das Hundertfache.
Um die Arbeit mit den Funktionen zu beginnen, lesen Sie den Artikel SQLite: Natives Arbeiten mit SQL-Datenbanken in MQL5.
Funktion |
Aktion |
Öffnet oder erstellt die angegebene Datenbankdatei |
|
Schließt die Datenbank |
|
Importieren von Daten aus einer Datei in eine Tabelle |
|
Exportiert eine Tabelle oder das Ergebnis einer SQL-Anfrage in eine CSV-Datei |
|
Druckt eine Tabelle oder ein Ergebnis der SQL-Anfrage im Experten-Journal aus |
|
Prüft das Vorhandensein der Tabelle in einer Datenbank |
|
Ausführung einer Anfrage an die angegebene Datenbank |
|
Erstellt das Handle für die Anfragen, die durch DatabaseRead() ausgeführt werden kann |
|
Rücksetzen einer Anfrage, wie nach dem Aufruf von DatabasePrepare() |
|
Setzt einen Parameterwert in einer Anfrage |
|
Setzt einen Parameterarray als Parameterwert |
|
Wechselt zum nächsten Eintrag als Ergebnis einer Anfrage |
|
Wechselt zum nächsten Datensatz und liest aus ihm Daten in die Struktur |
|
Entfernt eine Anfrage, die durch DatabasePrepare() erstellt wurde |
|
Startet die Ausführung der Transaktion |
|
Schließt die Ausführung der Transaktion ab |
|
Zurücksetzen der Transaktionen |
|
Abrufen der Felderanzahl einer Anfrage |
|
Abrufen des Feldnamens nach dem Index |
|
Abrufen des Feldtyps nach dem Index |
|
Abrufen der Feldgröße in Bytes |
|
Abrufen des Feldwerts als Zeichenkette aus dem aktuellen Datensatz |
|
Abrufen des Integer-Werts aus dem aktuellen Datensatz |
|
Abrufen des Long-Werts aus dem aktuellen Datensatz |
|
Abrufen des Double-Wertes aus dem aktuellen Datensatz |
|
Abrufen des Feldwerts als Array aus dem aktuellen Datensatz |