Connect.Odbc

ODBC-Connector


Inhalt




Allgemeines


Der TransdatiX ODBC-Connector stellt verschiedene Schnittstellen für den Zugriff auf Datenbanken über ODBC zur Verfügung, wie zum Beispiel für das Laden von Daten in Tabellen oder das Exportieren von Daten in CSV- oder XML-Dateien und einiges mehr. Allen Schnittstellen gemeinsam ist, dass für den Datenbank-Zugriff lediglich die Definition einer ODBC-Verbindung nötig ist.



Schnittstellen


  • ExecuteToCsv führt einen SQL-Befehl aus, der in einer Datei gespeichert ist, und gibt das Ergebnis in eine CSV-Datei aus
  • ExecuteToXml führt einen SQL-Befehl aus, der in einer Datei gespeichert ist, und gibt das Ergebnis in eine XML-Datei aus
  • Execute führt einen in einer Datei gespeicherten SQL-Befehl aus und erwartet kein Ergebnis
  • CopyTableRows dient zum Datenbank-übergreifenden Kopieren von Daten
  • DeleteTableRows dient zum Löschen von Datensätzen
  • BulkLoad verarbeitet Daten aus einer XML-Datei anhand eines XML-Schemas
  • BulkInsert lädt Daten aus einer XML-Datei anhand eines XML-Schemas

Schnittstelle ExecuteToCsv


Diese Schnittstelle ermöglicht die Selektion von Daten mittels SQL-Abfrage, wobei das Ergebnis in eine CSV-Datei exportiert wird. Die Selektionsmöglichkeiten sind vom verwendeten ODBC-Treiber und der Datenbank abhängig.

Das CSV-Format eignet sich zur Weiterverarbeitung durch eine Fülle von Anwendungen, da sehr viele Programme den Import von CSV-Dateien unterstützen. CSV-Dateien können beispielsweise auch mit Microsoft Excel geöffnet und bearbeitet werden. Die erzeugten CSV-Dateien können zum Beispiel auch als Eingabe für einen TransdatiX Konverter verwendet werden.

Folgende Parameter sind anzugeben:

  • Name der ODBC-Verbindung zur Datenbank
  • Ausgabedatei (Pfad und Name der Datei, in die die Ausgabe geschrieben werden soll)
  • Eingabedatei SQL-Statement (Pfad und Name der Datei, die die SQL-Abfrage enthält)

In die erste Zeile der CSV-Datei werden die Spaltennamen geschrieben. Sowohl die Spaltennamen als auch sämtliche Dateninhalte sind in Anführungszeichen eingeschlossen. Als Trennzeichen wird der Beistrich verwendet.

Hinweis: Eine hierarchische Abbildung ist mit SQL-Mitteln nicht möglich. Um Daten aus mehreren Tabellen abzufragen, die zueinander in Beziehung stehen, müssen also entweder alle Tabellen in einer Abfrage verknüpft durch den JOIN-Befehl abgefragt werden oder es müssen mehrere Abfragen und damit auch mehrere Ausgabedateien erstellt werden, wobei darauf zu achten ist, dass die Spalten, über die die Verknüpfung der Daten untereinander hergestellt werden kann, mit ausgegeben werden müssen, damit eine spätere Zusammenführung möglich ist.

Tipp: Spalten können durch die Verwendung des SQL-Befehls AS für die Ausgabe umbenannt werden.


Schnittstelle ExecuteToXml


Diese Schnittstelle ermöglicht die Selektion von Daten mittels SQL-Abfrage, wobei das Ergebnis in eine XML-Datei exportiert wird. Die Selektionsmöglichkeiten sind vom verwendeten ODBC-Treiber und der Datenbank abhängig.

Folgende Parameter sind anzugeben:

  • Name der ODBC-Verbindung zur Datenbank
  • Ausgabedatei (Pfad und Name der Datei, in die die Ausgabe geschrieben werden soll)
  • Eingabedatei SQL-Statement (Pfad und Name der Datei, die die SQL-Abfrage enthält)

Hinweis: Eine hierarchische Abbildung ist mit SQL-Mitteln nicht möglich. Um Daten aus mehreren Tabellen abzufragen, die zueinander in Beziehung stehen, müssen also entweder alle Tabellen in einer Abfrage verknüpft durch den JOIN-Befehl abgefragt werden oder es müssen mehrere Abfragen und damit auch mehrere Ausgabedateien erstellt werden, wobei darauf zu achten ist, dass die Spalten, über die die Verknüpfung der Daten untereinander hergestellt werden kann, mit ausgegeben werden müssen, damit eine spätere Zusammenführung möglich ist.

Tipp: Spalten können durch die Verwendung des SQL-Befehls AS für die Ausgabe umbenannt werden.


Schnittstelle Execute


Diese Schnittstelle setzt einen SQL-Befehl ab und erwartet kein Ergebnis. Die Möglichkeiten sind vom verwendeten ODBC-Treiber und der Datenbank abhängig. Es gilt zu beachten, dass jegliche Rückmeldung ignoriert wird (dies trifft nicht auf Fehler zu, die zum Abbruch führen). Somit ist es beispielsweise nicht möglich, die Anzahl der betroffenen Zeilen eines UPDATE- oder DELETE-Befehls zu ermitteln.

Folgende Parameter sind anzugeben:

  • Name der ODBC-Verbindung zur Datenbank
  • Eingabedatei SQL-Statement (Pfad und Name der Datei, die die SQL-Abfrage enthält)

Schnittstelle CopyTableRows


Mit dieser Schnittstelle können Daten aus einer Tabelle in eine Tabelle in einer anderen Datenbank kopiert werden. Dabei ist es möglich, Änderungen vorzunehmen, die für die Zieldatenbank möglicherweise notwendig sind.

Folgende Parameter sind anzugeben:

  • Name der ODBC-Verbindung zur Quelldatenbank
  • Name der Tabelle in der Quelldatenbank
  • Filter - hier kann eine SQL WHERE-Bedingung angegeben werden (inkl. "WHERE")
  • Name der ODBC-Verbindung zur Zieldatenbank
  • Name der Tabelle in der Zieldatenbank
  • Datentyp Decimal in Double konvertieren (Ja/Nein) - kann bei unterschiedlichen Datenbanksystemen notwendig sein
  • Alle Spaltennamen in Großbuchstaben umwandeln (Ja/Nein) - kann bei unterschiedlichen Datenbanksystemen notwendig sein
  • Alle Spaltennamen in Kleinbuchstaben umwandeln (Ja/Nein) - kann bei unterschiedlichen Datenbanksystemen notwendig sein 

Schnittstelle DeleteTableRows


Mit dieser Schnittstelle können Daten aus einer Tabelle gelöscht werden.

Folgende Parameter sind anzugeben:

  • Name der ODBC-Verbindung zur Datenbank
  • Name der Tabelle
  • Filter - hier kann eine SQL WHERE-Bedingung angegeben werden (inkl. "WHERE")

Schnittstelle BulkLoad


Mit dieser Schnittstelle können Daten aus einer XML-Tabelle anhand eines XML-Schemas verarbeitet werden. Über einen Operation-Code (XML-Attribut OpCode) kann definiert werden, ob ein INSTERT, ein UPDATE oder ein DELETE abgesetzt werden soll. Die XML-Datei kann hierarchische Daten enthalten, wobei jedes komplexe XML-Element einer Tabelle in der Datenbank entspricht. Abhängig von der gewünschten Operation wird der hierarchische Aufbau bei der Reihenfolge der Ausführung berücksichtig, um Probleme mit evtl. vorhandenen Beziehungen zu vermeiden.

Detaillierte Informationen über die Funktionsweise und die Bedienung dieser Schnittstelle erhalten Sie auf Anfrage.

Folgende Parameter sind anzugeben:

  • Name der ODBC-Verbindung zur Datenbank
  • Datenbank-Benutzer (optional)
  • Datenbank-Kennwort (opional)
  • XML-Eingabedatei
  • XML-Schema, das die Definition enthält 

Schnittstelle BulkInsert


Bei dieser Schnittstelle handelt es sich um eine vereinfachte Version der Schnittstelle BulkLoad. Mit dieser Schnittstelle ist lediglich das Laden von Daten per INSERT möglich. Das Attribut OpCode wird nicht benötigt. Ein Schema wird trotzdem benötigt, um die Datentypen ermitteln zu können.

Detaillierte Informationen über die Funktionsweise und die Bedienung dieser Schnittstelle erhalten Sie auf Anfrage.

Folgende Parameter sind anzugeben:

  • Name der ODBC-Verbindung zur Datenbank
  • Datenbank-Benutzer (optional)
  • Datenbank-Kennwort (opional)
  • XML-Eingabedatei
  • XML-Schema, das die Definition enthält

© 2002 - 2007 TransdatiX