Die Funktion der Datenbankanbindung kann entweder über das Menü Massen > Datenbankanbindung… oder über die rechte Maustaste Neu > Datenbankanbindung… aufgerufen werden.
Über das Menü im Objekt-Manager wird ein Knoten im Massenbaum eingefügt, der eine bestimmte Datenbank anbindet. Dazu wird eine vordefinierte Konfiguration und anschließend entweder eine Datei oder eine Teilmenge davon ausgewählt. Unter diesem Knoten werden dann alle Datensätze der Datei bzw. der Teilmenge als Knoten angelegt und mit diesem Symbol gekennzeichnet.
Die Anzahl der Hierarchiestufen richtet sich dabei nach der Konfiguration und der Struktur der Datenbank, kann aber theoretisch beliebig viele Hierarchiestufen beinhalten. Durch die Zuordnung von Zeichnungsobjekten innerhalb der Knoten können diese an die Datensätze verknüpft und ihre Attribute (Eigenschaften) in die Datensätze der Datenbank geschrieben werden. Die Funktionsweise der Schnittstelle wird auch anhand eines ausführlichen Beispiels erläutert (siehe Anwendungsbeispiele).
Grundsätzlich kann zwischen Datenbanken unterschieden werden, die mehrere Tabellen in einer Datei unterbringen (wie in diesem Beispiel: MS Access) und Datenbanken, die aus mehreren Dateien bestehen, die dann eine (FoxPro, Paradox) oder mehrere Tabellen enthalten.
Der Zugriff auf die Datenbanken aus dem Objekt-Manager erfolgt über einen ODBC-Treiber, der vorab in der Systemsteuerung eingerichtet werden muss. In den meisten Fällen muss dieser Eintrag manuell erstellt werden. In einigen Fällen wird dies jedoch schon bei der Installation des Datenbankprogramms automatisch vorgenommen. Der benötigte Treiber, dessen Version und Konfiguration, kann am besten beim Hersteller des Datenbankprogramms erfragt werden.
Eine ODBS-Konfiguration besteht im Wesentlichen aus einer Konfigurationseinstellung und mehreren SQL-Befehlen, die den Zugriff auf eine Datenquelle aus dem Objekt-Manager über den ODBC-Treiber steuern.
Um eine Konfiguration zu erstellen oder zu bearbeiten, muss der entsprechende Dialog in DATAflor CAD aufgerufen werden.
Mit Anhängen…, Erstellen…, Bearbeiten… und Entfernen… werden neue bzw. vorhandene SQL-Befehle eingefügt, geändert und gelöscht.
Alle SQL-Befehle werden über den gleichen Dialog SQL-Befehl erstellen angelegt. Dort können diese aus Tabellen- und Spaltennamen zusammengesetzt oder im Feld SQL-Befehl manuell eingegeben werden. Bei der manuellen Eingabe kann jede Syntax verwendet werden, die der ODBC-Treiber unterstützt.
Sobald in der oberen Auswahl eine Datenbanktabelle ausgewählt oder eingegeben wird, kann über [Spalte >] automatisch auf die Spalten der Tabelle zugegriffen werden. Bei einer Auswahl wird die Spalte übernommen, die Tabellenauswahl gegraut und der SQL-Befehl automatisch erstellt.
Bei einigen Syntaxkonstrukten ist DATAflor CAD nicht in der Lage, die selektierten Spalten oder die Tabelle eindeutig zu erkennen und im Dialog SQL-Befehl erstellen korrekt zu interpretieren. Dadurch wird die Leistungsfähigkeit dieses Dialogs vermindert. Bei der Ausführung der Datenbankanbindung spielt dies jedoch keine Rolle.
Für die Ansteuerung der Datenbank stehen fünf verschiedene SQL-Eingabebereiche zur Verfügung:
Auswahl-SQL | Ein oder mehrere Auswahl-SQL Befehle erstellen eine Liste von möglichen Teilmengen von Datensätzen aus einer Datenbank. Bei der Kopplung einer Datenbank an eine Zeichnung kann dann aus dieser Liste eine Auswahl für die Anbindung an DATAflor CAD getroffen werden. Auswahl-SQL trägt den ausgewählten Datensatz in einer Massenbaumstruktur als obersten Eintrag ein. |
Gruppen-SQL | Wiederum beliebig viele Gruppen-SQL Befehle erzeugen die Baumstruktur, die im Objekt-Manager angezeigt wird. |
Grafik-SQL | Sofern die angebundene Datenbank Grafikinformationen enthält, können diese in der Anbindung berücksichtigt werden. Es können ein Schraffurname, die Farbe und ein Faktor ausgelesen werden. Im Unterschied zu Auswahl- und Gruppen-SQL gibt es nur einen Grafik-SQL Befehl für alle Ebenen. |
Objekt-SQL | Der Objekt-SQL Befehl definiert die Erzeugung von grafischen Objekten in der Zeichnung bei der Anbindung einer Datenbank. Im Unterschied zu Auswahl- und Gruppen-SQL gibt es nur einen Objekt-SQL Befehl für alle Ebenen. |
Mengen-SQL | Hier handelt es sich um zwei SQL-Befehle mit unterschiedlicher Bedeutung. MENGENSQL1 liest die Mengeneinheit aus bzw. definiert die Objekteigenschaft, welche in die Datenbank eingetragen werden soll. MENGENSQL2 ist für den Eintrag der Menge in die Datenbank notwendig. |
In den meisten Fällen wird nur Auswahl-, Gruppen- und Mengen-SQL benötigt (z.B. für alle Anbindungen von Kalkulationsprogrammen, da hier keine grafische Steuerung vorgesehen ist). Grafik- und Objekt-SQL Befehle verlangen eine sehr genaue Vorgabe in der Datenbank, die nicht immer durch den Fremdhersteller realisiert ist.
Innerhalb der Eingabefelder in dem Konfigurationsdialog können alle gängigen SQL-Befehle frei eingegeben werden. Hierfür ist die Kenntnis der SQL-Befehlseingabe Voraussetzung. Einige wichtige Statements sind hier kurz aufgeführt:
SQL Stichwort | ClassWizard und Datenbankenklassen benutzen es … |
---|---|
SELECT | um zu identifizieren, welche Tabellen und Spalten in der Datenquelle verwendet werden sollen. |
WHERE | um einen Filter anzuwenden, der die Auswahl eingrenzt. |
ORDER BY | um eine Sortierungsreihenfolge auf den Datensatz anzuwenden. |
INSERT | um neue Daten zu einem Datensatz beizufügen. |
DELETE | um Daten von einem Datensatz zu löschen. |
UPDATE | um die Felder eines Datensatzes zu verändern. |
Genauere Informationen sowie die Befehlssyntax können der empfohlenen Fachliteratur entnommen werden (siehe Datenbankanbindung).