SQL-Abfrage
Was sind Abfragen?
In SQL Kürzel für Structured Query Language SQL ist eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken. SQL ist von ANSI und ISO standardisiert und wird von fast allen gängigen Datenbanksystemen unterstützt. werden, wie auch in anderen Datenbanksystemen, so genannte Abfragen verwendet, um Daten aus bereits bestehenden Datenbank-Tabellen zu extrahieren, Werte zu berechnen usw. Hierzu wird oft auf eine Teilmenge der bereits bestehenden Daten zugegriffen und diese in gewünschter Form dargestellt oder weiterverwendet.
Der Aufbau von SQL-Abfragen für entsprechende Ergebnisse kann an dieser Stelle nicht erklärt werden.
Informieren zu dem Thema finden Sie im Internet oder in der Fachliteratur.
es2000 macht keine Angaben zu einer bestimmten Eignung der folgenden Informationen. Irrtümer und Fehler bleiben ausdrücklich vorbehalten, die Angaben erfolgen ohne Gewähr. Die Angaben stellen nur Beschreibungen dar und enthalten keine Garantie der Beschaffenheit der Produkte. Die Informationen können zum Teil auch ein Versuch sein, Ihnen bei einer Aufgabenstellung zu helfen, selbst wenn das Produkt eigentlich nicht für diesen speziellen Zweck vorgesehen wurde.
Neue SQL-Abfrage
Um eine neue SQL-Abfrage anzulegen, klicken Sie im esdbm Programmfenster auf das Neue Abfrage.
Es wird ein neues Register Abfrage geöffnet.
Als Vorgabe wird unter Datenbanken der Alias ESWin ausgewählt und die entsprechenden Datenbank-Tabellen aufgelistet.
Auf diesem Register werden folgende Informationen angezeigt.
Auf dieser Seite werden folgende Informationen angezeigt.
Bereich 'Datenbank'
Hier finden sie alle angelegten Aliase, welche für die entsprechenden Datenbanken definiert wurden. Eine Datenbank wird durch einen Doppelklick auf dem entsprechenden Alias geöffnet.
Die angezeigten Datenbanken werden aus der Datei dbxconnections.ini aus dem esoffice Para-Verzeichnis ausgelesen.
Die Datenbankverbindungen können Sie unter Verbindungseinstellungen einsehen / bearbeiten.
Bereich 'Tabellen'
Hier werden als Vorgabe die Tabellen des aktuell gewählten Datenbank-Alias aufgelistet.
Um eine Tabelle zu öffnen, klicken Sie doppelt auf den Tabellennamen. Es wird eine SQL-Abfrage erstellt, die Datenbank geöffnet und das Abfrage-Ergebnis angezeigt.
Tabellen suchen
Über das Suchfeld oberhalb der Tabellenliste können Sie innerhalb der Tabellen suchen. Nach Eingabe eines Suchbegriffs wird die Tabellenliste auf Tabellen eingeschränkt, die den Suchbegriff beinhalten.
Views
Neben Tabellen können Sie sich auch die Datenbank-Views Ein Datenbank-View ist eine in der Datenbank definierte Sicht von bestimmten Daten. Views können definiert weren, um häufig verwendete Daten aus verschiedenen Tabellen abzufragen und darstellen zu können. der ausgewählten Datenbank auflisten lassen.
Bereich 'SQL-Abfrage'
In diesem Bereich werden die SQL-Abfragen definiert.
Wird eine Tabelle per Doppelklick geöffnet, wird als Vorgabe eine SQL-Abfrage für diese Tabelle erstellt und die Datensätze dieser Tabelle werden auf dem Unterregister Daten angezeigt. Somit steht die erste Abfrage immer schon im Eingabefeld.
Es werden nicht alle Datensätze beim Öffnen einer Tabelle angezeigt
Bei einigen Tabellen mit großen Datenbestand werden zunächst nur 500 Datensätze angezeigt (SELECT TOP 500 *).
Um alle Datensätze anzuzeigen, entfernen Sie im SQL-Befehl den Zusatz TOP 500.
Hilfsfunktionen
Bei der Erstellung von Abfragen wurden kleine Hilfestellungen mit integriert. So wird bei der Eingabe eines sinnvollen Punktes (.) automatisch eine Liste aller zur Verfügung stehender Felder geöffnet. Hier kann nun das gesuchte oder gewünschte Feld ausgewählt werden.
Liste der zur Verfügung stehenden Felder
Wird während der Eingabe einer Abfrage die Tastenkombination Strg + Leertaste gedrückt öffnet sich eine Liste mit allen Tabellen und Schlüsselwörtern. Auch hier kann nun das entsprechend Gesuchte ausgewählt werden.
Liste der Tabellen und Schlüsselwörter
Bedeutung der Symbole
Feld
View
Tabelle
SQL-Funktion / Schlüsselwort
Oberhalb des Eingabefeldes befindet sich das Bearbeitungsmenü für die Abfragen.
Bedien-Elemente
Zum Ausführen der Abfragen stehen einige Bedien-Elemente zur Verfügung.
Abfrage ausführen
Haben Sie eine neue Abfrage erstellt, können Sie diese über diese Schaltfläche oder die Taste F9 ausführen. Die so ermittelte Datenmenge wird auf dem Register Tabelle angezeigt.
Sie können auch einen Teil der Abfrage markieren und mit der Taste F10 ausführen.
Vorheriges Statement
Haben Sie die Abfrage nach der Ausführung geändert, können Sie über die Schaltfläche Vorheriges Statement wieder zur vorherigen Abfrage zurückkehren.
Die Schaltfläche ist erst aktiv nach dem eine Abfrage ausgeführt wurde.
Tastenkombination: Alt + ← Pfeil links
Nächstes Statement
Wenn Sie mit der Schaltfläche Vorheriges Statement zu einer vorherigen Abfrage zurück gewechselt haben, können Sie mit der Schaltfläche Nächstes Statement wieder zur nächsten Abfrage wechseln.
Tastenkombination: Alt + → Pfeil rechts
Transaktion starten
Mit dieser Schaltfläche oder der Taste F6 starten Sie eine Datenbank-Transaktion. Eine Transaktion bezeichnet eine Menge von Datenbankänderungen, die zusammen ausgeführt werden sollen / müssen.
Siehe auch Transaktion
Commit
Mit der Schaltfläche Commit oder der Taste F7 kann eine im Transaktionmodus ausgeführte Abfrage an die Datenbank übergeben werden.
Rollback
Mit der Schaltfläche Rollback oder der Taste F8 kann eine im Transaktionmodus ausgeführte Abfrage verworfen werden.
Kontextmenü
In der SQL-Abfrage stehen Ihnen auch noch Funktionen über das Kontextmenü zur Verfügung, welches Sie über die rechte Maustaste aufrufen können.
Markierte Abfrage ausführen
Sie können auch nur einen Teil einer SQL Abfrage ausführen.
Markieren Sie dazu mit gedrückter linker Maustaste den gewünschten Teil der Abfrage, der Text wird farbig hinterlegt.
Wählen Sie nun im Kontextmenü den Eintrag Markierte Abfrage ausführen.
Tastenkürzel: F10.
Ausschneiden
Entfernt den markierten Teil einer SQL-Abfrage und stellt ihn über die Zwischenablage zur Verfügung. Über Einfügen kann der ausgeschnittene Abschnitt wieder an anderer Stelle eingefügt werden.
Tastenkürzel: Strg + X
Kopieren
Kopiert den markierten Teil einer SQL-Abfrage in die Zwischenablage. Über Einfügen kann der kopierte Abschnitt an anderer Stelle eingefügt werden.
Tastenkürzel: Strg + C
Einfügen
Fügt den Inhalt aus der Zwischenablage ein.
Tastenkürzel: Strg + V
Alles auswählen
Markiert den gesamten Text der SQL-Abfrage.
Tastenkürzel: Strg + A
Unterregister 'Daten'
Auf dem Unterregister Daten wird das Ergebnis der SQL Abfrage angezeigt.
Auf diesem Register werden Abfragewerte angezeigt. Die aktuelle Zeile wird mit einem kleinen Pfeil in der ersten Spalte gekennzeichnet. Zusätzlich befindet sich immer eine leere Zeile am Ende der Anzeigemenge.
Folgende Funktionen stehen hier zu Verfügung:
Die hier aufgeführten Funktionen nehmen unmittelbar Einfluss auf Ihren Datenbankinhalt.
Alle geänderten Daten werden sie zum Beispiel später auch im Programm esoffice wiederfinden.
Werden Daten ohne vorherige Sicherung gelöscht oder überschrieben, kann dies nicht rückgängig gemacht werden.
Neuer Datensatz
Gibt die letzte Eingabezeile zum Bearbeiten frei, erkennbar durch das Symbol am Anfang der Zeile.
Löschen
Löscht den aktuellen Datensatz, vor dem eigentlichen Löschvorgang wird eine Sicherheitsabfrage angezeigt.
Speichern
Speichert die getätigten Änderungen in der Datenbank.
Verwerfen
Nimmt alle ungespeicherten Änderungen zurück.
Abfrage speichern
Sie können eine SQL-Abfrage für eine spätere Verwendung als *.SQL-Datei speichern.
-
Erstellen Sie eine SQL Abfrage.
-
Wählen Sie imDateimenü den Eintrag Speichern unter
-
Im Dateiauswahlfenster können Sie einen Pfad und einen Dateinamen festlegen.
Legen Sie als Dateityp die Auswahl SQL Abfrage (*.sql) fest.
Die Abfrage wird als Textdatei mit der Dateiendung *.sql-Datei gespeichert.
Dateien im Format *.sql (SQL Abfragen) können über das Dateimenü über die Funktion Datei öffnen geladen werden.
Beim Öffnen einer *.sql wird das Modul SQL Abfragen geladen.
SQL-Skript laden
Haben Sie bereits ein als Datei gespeichertes SQL-Skript vorliegen, können Sie dieses öffnen und ausführen.
-
Im Rahmen eines esoffice Updates kann es erforderlich sein Datenbank-Updateskripte auszuführen.
-
Bei der Einrichtung einer Testumgebung
Siehe auch esoffice Testumgebung einrichten
-
Öffnen Sie das esdbm und wählen Sie im Dateimenü den Eintrag Datei öffnen.
-
Wählen Sie als nächstes im Dateiauswahlfenster die SQL-Skript-Datei aus und klicken auf die Schaltfläche Öffnen.
-
Das Modul SQL-Abfrage wird in einen Register geöffnet und das SQL-Skript wird geladen.
Login Daten (bis esdbm Version 1.0.6.0)
Wird ein Modul geöffnet oder eine Funktion mit Zugriff auf eine esoffice Datenbank ausgeführt, ist eine Anmeldung mit einem esoffice Benutzer erforderlich.
Ab der esdbm Version 1.0.6.0 ist kein Login mehr notwendig.
Der Benutzer benötigt die Berechtigung 110 - Grundeinstellungen.
Haben Sie sich erfolgreich an eine esoffice Datenbank (Alias) im esdbm angemeldet, erfolgt beim weiteren Zugriff auf den Datenbank-Alias keine erneute Abfrage der Login Daten.
-
Wählen Sie in der Liste Datenbanken den Datenbank Alias aus auf dem das Skript ausgeführt werden soll.
Sie können vor der Ausführung noch Anpassungen an Skript vornehmen, dafür sind umfangreiche Kenntnisse der esoffice Datenbanken und SQL-Wissen erforderlich.
-
Starten Sie die Ausführung des SQL-Skripts über die Schaltfläche Abfrage ausführen
-
Nach der Ausführung des SQL Skripts wird noch eine Meldung und die Ausführungszeit angezeigt.
Abfrageergebnis speichern
Um das Ergebnis einer Abfrage zum Beispiel in Microsoft Excel weiterverwenden zu können, können Sie das Abfrageergebnis in verschiedenen Dateiformaten speichern.
Nutzen Sie dazu im Dateimenü die Funktion Speichern unter, Sie können das Abfrageergebnis in den folgenden Dateiformaten speichern:
-
Excel-Tabelle (*.xlsx)
-
MS-XML Extensible Markup Language, abgekürzt XML, ist eine Auszeichnungssprache zur Darstellung hierarchisch strukturierter Daten in Form von Textdateien.-Datei (*.xml)
-
MS-XML-Datei (Kein Schema) (*.xml)
-
CSV-Datei (*.csv)
-
es2000 CSV-Datei (*.escsv)
Unterregister 'Felder'
Auf dem Unterregister Felder werden Informationen zu jedem Tabellenfeld hinsichtlich seiner Größe, seines Namens, seines Datentyps usw. angezeigt.
In der Spalte IsKey werden die jeweiligen Primärschlüssel Primärschlüssel kommen in relationalen Datenbanken zum Einsatz und werden zur eindeutigen Identifizierung eines Datensatzes verwendet. Es ist erforderlich, dass der Wert eines Primärschlüssels ist in einer Tabelle einmalig ist, da er jeden Datensatz eindeutig kennzeichnet. Primärschlüssel können auch aus mehreren Feldern gebildet werden.felder der einzelnen Tabellen durch eine aktivierte Option in der Spalte Is Key gekennzeichnet.
Ist ein Datensatz anhand eines Feldes nicht eindeutig identifizierbar, so kann der Primärschlüssel (Index) auch aus einer Kombination mehreren Feldern bestehen.
Splitter
Zwischen den einzelnen Bereichen stehen Ihnen so genannte Splitter zur Verfügung, um mit ihnen die Bereiche hinsichtlich der Größe individuell zu gestalten.
Statuszeile
In der Statuszeile des SQL-Abfrage-Registers finden sie noch statistische Angaben zur Ausführungszeit der Abfrage, Anzahl der angezeigten Datensätze und der Cursorposition im Abfrage-Bereich.
Listenfunktionen
In den Unterregistern Daten und Feldern stehen Ihnen folgende Funktionen für die Listen zur Verfügung.
Die Werte einer Spalte können durch Klicken auf den Tabellenspaltenkopf auf- oder absteigend sortiert werden.
Kontextmenü
Klicken Sie mit der rechten Maustaste auf den Spaltenkopf, stehen Ihnen im Kontextmenü weitere Funktionen zur Sortierung zur Verfügung.
Aufsteigend sortieren / Absteigend sortieren
Eine weitere Möglichkeit die Daten in der Listenansicht zu sortieren ist mit einem Rechtsklick auf den Spaltenkopf im Kontextmenü Aufsteigend sortieren / Absteigend sortieren auszuwählen.
Sortierung entfernen
Hebt alle getroffenen Sortierungen auf.
Mehrfachsortierung von Spalten
Es können mehrere Spalten für die Sortierung ausgewählt werden, wenn bei der Auswahl der einzelnen Spalten die Shift -Taste gedrückt hält.
Sie können auch innerhalb der angezeigten Informationen eine Volltextsuche starten.
Klicken Sie dazu mit der rechten Maustaste auf die Spaltenüberschrift und wählen im Kontextmenü den Eintrag Suchfeld einblenden.
Oberhalb der Spaltenüberschriften wird ein Suchfeld eingeblendet. Tippen Sie den Suchbegriff in das Suchfeld ein und schließen Sie die Eingabe mit der Taste Enter ab.
Alle Fundstellen werden in der Liste farbig markiert dargestellt.
Um die Datensätze nach identischen Datensätzen einer Spalte zu gruppieren, gehen Sie folgendermaßen vor:
Variante 1
Ziehen Sie die gewünschte Spalte bei gedrückter linker Maustaste in den Gruppierungsbereich.
Wird der Gruppierungsbereich nicht angezeigt, klicken Sie mit der rechten Maustaste auf die Überschriftenzeile der Liste und wählen im Kontextmenü den Eintrag Gruppierungsfeld anzeigen.
Variante 2
Klicken Sie mit der rechten Maustaste auf den gewünschten Spaltenkopf und wählen Sie im Kontextmenü Nach dieser Spalte gruppieren aus.
Bei beiden Varianten werden die Daten nun nach dem gewählten Kriterium gruppiert dargestellt.
Die Listen werden immer ohne Gruppierung geöffnet
Gruppierung erweitern
Sie können eine Gruppierung erweitern indem Sie bereits gruppierte Daten mit weiteren Kriterien weiter unterteilen. Ziehen Sie dazu weitere Spaltenüberschriften in den Gruppierungsbereich oder verwenden Sie den Kontextmenüeintrag Nach dieser Spalte gruppieren.
Gruppierung aufheben
Zum Aufheben der Gruppierung klicken Sie mit der rechten Maustaste in den Gruppierungsbereich und wählen im Kontextmenü den Eintrag Gruppierung entfernen.
Spalten verschieben / Spaltenreihenfolge ändern
Die Reihenfolge der Spalten kann jeder Benutzer individuell festlegen. Zum Verschieben einer Spalte ziehen Sie die gewünschte Spalte bei gedrückter linker Maustaste an die gewünschte Position zwischen zwei Spalten und lassen dann die Maustaste los (Drag-and-drop).
Geeignete Stellen zum Einfügen einer Spalte erkennen Sie an zwei grünen Pfeilen.
Spalteneditor
Mit dieser Funktion können ausgeblendete Spalten wieder in die Listen- / Tabellenansicht übernommen werden. Dazu wird ein weiteres Fenster (Anpassen) angezeigt, in dem alle ausgeblendeten Spalten angezeigt werden.
Ziehen Sie die gewünschte Spalte bei gedrückter linker Maustaste an die gewünschte Position zwischen zwei Spalten und lassen dann die Maustaste los (Drag-and-drop). Geeignete Stellen zum Einfügen einer Spalte erkennen Sie an zwei grünen Pfeilen. Die Spalte wird dann an der Position unter dem Mauszeiger eingefügt.
Optimale Breite
Ändert die Spaltenbreite zum automatischen Anpassen an den Inhalt. Klicken Sie mit der rechten Maustaste auf den Spaltenkopf und wählen im Kontextmenü den Eintrag Optimale Breite.
Verwenden Sie die Funktion Layout speichern, um die geänderte Spaltenbreite dauerhaft zu speichern.
Wird nach dem Ändern der Spaltenbreite das Layout nicht gespeichert, wird nach dem erneuten Start des Moduls die Breite der Spalte zurückgesetzt.
Optimale Breite (Alle Spalten)
Ändert die Spaltenbreite zum automatischen Anpassen an den Inhalt für alle Spalten. Klicken Sie mit der rechten Maustaste auf den Spaltenkopf und wählen im Kontextmenü den Eintrag Optimale Breite (Alle Spalten).
Verwenden Sie die Funktion Layout speichern, um die geänderte Spaltenbreite dauerhaft zu speichern.
Wird nach dem Ändern der Spaltenbreite das Layout nicht gespeichert, wird nach dem erneuten Start des Moduls die Breite der Spalte zurückgesetzt.
Transaktion
Die hier aufgeführten Funktionen nehmen Einfluss auf den Datenbankinhalt.
Alle geänderten Daten werden sie zum Beispiel später auch im Programm esoffice wiederfinden.
Werden Daten ohne vorherige Sicherung gelöscht oder überschrieben, kann dies nicht rückgängig gemacht werden.
Eine Transaktion bezeichnet eine Menge von Datenbankänderungen, die zusammen ausgeführt werden sollen / müssen.
So ist beispielsweise die Buchung (als Transaktion) eines Geldbetrags durch zwei Datenbankoperationen Abbuchen des Geldbetrages von Konto A und Buchung des Geldbetrages auf Konto B gekennzeichnet.
Kann die vollständige Abarbeitung der elementaren Datenbankoperationen der Transaktion nicht durchgeführt werden (zum Beispiel auf Grund eines Fehlers), ist es erforderlich alle durchgeführten Änderungen an dem Datenbestand auf den Ausgangszustand zurückzusetzen.
Der Vorgang, der alle Änderungen einer Transaktion zurücksetzt, wird als Rollback bezeichnet. Der Begriff Commit bezeichnet das Ausführen einer Transaktion. Etwaige Änderungen am Datenbestand werden somit übernommen.
Transaktionen sind eine Möglichkeit, die Konsistenz des Datenbestandes zu sichern. Im Beispiel der doppelten Kontenführung wird durch das Verhindern von ungültigen Teilbuchungen eine ausgeglichene Kontobilanz gewährleistet.
Transaktion starten
Mit der Schaltfläche Transaktion starten oder der Taste F6 starten Sie eine Datenbank-Transaktion. Eine Transaktion bezeichnet eine Menge von Datenbankänderungen, die zusammen ausgeführt werden sollen / müssen.
Definieren sie Ihre SQL-Abfrage und klicken Sie dann auf die Schaltfläche Abfrage ausführen. Das Ergebnis der Abfrage wird auf dem Unterregister Daten angezeigt.
Commit
Diese Schaltfläche ist nur aktiv, wenn eine Transaktion gestartet wurde.
Mit der Schaltfläche Commit oder der Taste F7 kann eine im Transaktionmodus ausgeführte Abfrage an die Datenbank übergeben werden.
Rollback
Diese Schaltfläche ist nur aktiv, wenn eine Transaktion gestartet wurde.
Mit der Schaltfläche Rollback oder der Taste F8 kann eine im Transaktionmodus ausgeführte Abfrage verworfen werden.
Tastenkombinationen
Im Modul SQL-Abfragen stehen folgende Tastaturkombinationen zur Verfügung.
Alle Befehle anzeigen
Strg + Umschalttaste + P
Zeigt alle im geöffneten Modul verfügbaren Befehle inklusive der Tastenkürzel in einem Fenster an.
Innerhalb des Befehlsfensters kann auch nach Befehlen gesucht werden.
Datei öffnen
Strg + O
Neue Abfrage öffnen
Strg + T
Aktuelles Register schließen
Strg + F4
Alles markieren
Strg + A
Ausschneiden
Strg + X
Einfügen
Strg + V
Kopieren
Strg + C
Abfrage ausführen
F9
Markierte Abfrage ausführen
F10
SQL Formatieren
Alt + Umschalttaste + F
Vorheriges Statement
Alt + ← Pfeil links
Verfügbar wenn mindestens eine SQL Abfrage ausgeführt worden ist.
Nächstes Statement
Alt + → Pfeil rechts
Verfügbar wenn die Funktion Vorheriges Statement ausgeführt worden ist.
Neue Abfrage öffnen
Strg + T
Suchen
Strg + F
Speichern
Strg + S
Speichern unter
Strg + Umschalttaste + S
Transaktion starten
F6
Commit
F7
Verfügbar bei gestarteter Transaktion
Rollback
F8
Verfügbar bei gestarteter Transaktion