MetaEditor HilfeVerwendung der SQL-Datenbank

Verwendung der SQL-Datenbank

MetaEditor bietet Optionen für komfortable Operationen mit Datenbanken. Diese Fähigkeiten basieren auf der beliebten SQLite Engine. Die gesamte Datenbank befindet sich in einer einzigen Datei auf der Festplatte eines Benutzer-PCs.

Der Editor bietet Zugang zu den Hauptfunktionen für die Arbeit mit Datenbanken, so dass Sie:

  • Erstellen und Verbinden von Datenbanken
  • Tabellen anzeigen und schnelle Datenabfragen durchführen
  • Erstellen und Ausführen von SQL-Abfragen, Rollback-Änderungen

Die Entwicklung von Handelsstrategien ist mit der Verarbeitung großer Datenmengen verbunden, und deshalb sind Datenbanken im Algo-Handel weit verbreitet. Die Verwendung von Datenbanken ermöglicht Ihnen:

  • Handelshistorie und Notierungen zu analysieren
  • Speichern und Analysieren von Optimierungs- und Testergebnissen
  • Daten mit anderen Analysepaketen vorbereiten und austauschen
  • Speichern von Einstellungen und MQL5-Programmzuständen

Die Sprache MQL5 unterstützt Funktionen für die Arbeit mit Datenbanken direkt aus Ihren Programmen heraus. Für Details lesen Sie bitte den Artikel "SQLite: Natives Arbeiten mit SQL-Datenbanken in MQL5".

Erstellen einer Datenbank #

Die Funktionen zur schnellen Datenbankerstellung sind über den MQL5-Assistenten verfügbar. Sie können auf einfache Weise Ihre erste Tabelle erstellen und ihre Felder definieren.

Erstellen einer Datenbank mit dem Assistenten

Die folgenden Feldtypen sind verfügbar:

  • integer – ganzzahlige Werte
  • real – reelle Zahlen
  • text – Zeichenketten
  • blob – Arrays mit Binärdaten

Felder können auch mit Flags markiert werden:

  • primary – Ein Primärschlüssel, der eindeutig jeden Datensatz in der Tabelle identifiziert. Nur ein Feld kann als Primärschlüsseln verwendet werden. Die Werte in diesem Feld müssen eindeutig sein.
  • unique – ein Feld mit Werten, die sich nicht wiederholen dürfen. Der Versuch, einen bereits vorhandenen Wert zu schreiben, führt zu einem Fehler. Sie können dieses Flag für die Felder verwenden, die eindeutige Werte haben müssen. Es kann zum Beispiel für ein Feld gesetzt werden, das für Handelstickets verwendet wird.

Sie können Datenbanken auch über das Kontextmenü des Navigators erstellen:

  • Datenbank erstellen – erstellt eine leere Datenbankdatei mit dem gewählten Format. Die Erweiterung .db wird standardmäßig verwendet.
  • Aus Datei erstellen – erstellt eine Datenbank auf der Grundlage einer vorhandenen *.SQL-Datenbank.

Sobald die Datenbank erstellt ist, werden Sie zum entsprechenden Navigator-Abschnitt umgeleitet. Alle Datenoperationen werden von diesem Abschnitt aus durchgeführt.

Tabellen importieren #

Sie können Tabellen in einer Datenbank auf der Grundlage vorgefertigter CSV-Dateien erstellen. Klicken Sie im Datenbankmenü auf "Tabelle importieren", wählen Sie eine Datei aus und konfigurieren Sie die folgenden Parameter:

  • Tabellenname in der Datenbank.
  • Automatische oder manuelle Erkennung der Dateikodierung.
  • Datentrennzeichen: Komma, Semikolon, Tabulator oder Leerzeichen.
  • Überspringen der angegebenen Anzahl von Zeilen am Anfang.
  • Kommentar-Präfix.
  • Ob die Datei Spaltennamen hat. Wenn Sie diese Option aktivieren, werden Werte aus der ersten Zeile der Datei als Spaltennamen importiert.
  • Welche Zeilenumbrüche verwendet werden: nur Zeilenvorschub (LF, Standard) oder Wagenrücklauf- und Zeilenvorschubzeichen (CRLF).
  • Ob Daten zu einer neuen Tabelle oder zu einer bestehenden Tabelle hinzugefügt werden sollen.
  • Welche Anführungszeichen für Zeichenketten in der Datei verwendet werden: einfache oder doppelte Anführungszeichen. Anführungszeichen werden beim Import entfernt.

Importieren einer fertigen Tabelle in eine Datenbank

Arbeiten mit der Datenbank #

Der Navigator bietet eine separate Registerkarte für die Arbeit mit Datenbanken. Klicken Sie in dessen Kontextmenü oder im Menü "Datei" auf "Öffnen" und wählen Sie die Datenbankdatei aus. Entsprechende Tabellen werden im Navigator angezeigt.

Mit einem Doppelklick auf den Tabellennamen können die ersten 1.000 Datensätze schnell abgefragt werden.

Arbeiten mit der Datenbank

Um eine Datenbankabfrage auszuführen, geben Sie diese im rechten Teil des Editors ein und klicken Sie auf "Ausführen". Im Falle eines Abfragefehlers wird die entsprechende Meldung in den Log geschrieben. Ein Beispiel für eine einfache Abfrage zur Erstellung einer Tabelle:

CREATE TABLE COMPANY(ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL);

Die Tabelle COMPANY hat 5 Felder: Datensatz-ID, Name, Alter, Adresse und Gehalt. Das ID-Feld dient als Schlüssel, d.h. als eindeutiger Index. Diese Indices ermöglichen eine eindeutige Identifizierung jedes Datensatzes und können in verschiedenen Tabellen verwendet werden, um sie miteinander zu verknüpfen. Das ist vergleichbar mit der Art und Weise, wie eine Positions-ID alle mit einer bestimmten Position verbundenen Geschäfte und Aufträge verknüpft.

Wenn eine Tabellenspalte Zeitangaben in Minuten (UNIX-Zeit), Sekunden oder Mikrosekunden seit 1970.01.01 enthält, klicken Sie mit der linken Maustaste darauf und wählen Sie das gewünschte Format. Danach wird die Zeit im üblichen Format angezeigt, YYYYY.MM.DD hh:mm:ss.

Um eine Tabelle als Datei zu speichern, fragen Sie alle Daten aus der Tabelle mit einer Abfrage "SELECT * FROM [Tabellenname]" ab und klicken Sie dann im Kontextmenü auf "Export". Der Exportvorgang bietet die gleichen Tabellenoptionen wie der Import.