Zum Hauptinhalt springen

DB Log Table-Transferobjekt

Das Transferobjekt DB Log Table gleicht zur Laufzeit die Struktur einer Datenbanktabelle mit einer im Transferobjekt hinterlegten Sollstruktur ab und schreibt anschließend die eingehenden Datensätze in diese Tabelle. Fehlt die Tabelle, wird sie angelegt; weicht sie von der Sollstruktur ab, wird sie je nach eingestelltem Verhalten korrigiert. Das Transferobjekt fungiert damit als Transferziel.

[DB-Log-Table-TO in der Projektierungsfläche]

Stellen Sie nach einem Doppelklick auf das Transferobjekt die Eigenschaften auf den Registerkarten Log Table und Optionen/Verhalten ein.

Registerkarte: Log Table

Auf dieser Registerkarte legen Sie die Datenbankanbindung, die Zieltabelle und die Sollstruktur der Spalten fest.

[DB-Log-Table-TO Registerkarte Log Table]

EigenschaftBeschreibung
DatenquelleHier stehen alle im Bereich Plug-ins erstellten Datenbank-Anbindungen zur Auswahl. Sollte die gewünschte Anbindung noch nicht vorhanden sein, können Sie diese im Plug-ins-Bereich als Microsoft SQL Server, Oracle, SAP HANA, ODBC, OLE DB, MySQL, PostgreSQL oder MS Access bereitstellen.
TabellennameName der Tabelle, deren Struktur abgeglichen und in die geschrieben wird. Existiert die Tabelle nicht, wird sie mit der unten definierten Struktur angelegt.

Spalten

In der Spaltentabelle definieren Sie die Sollstruktur der Zieltabelle. Über die Schaltfläche zum Hinzufügen legen Sie eine neue Zeile an, über die Schaltfläche am Zeilenanfang entfernen Sie eine Spalte wieder. Jede Zeile beschreibt eine Spalte der Tabelle.

Die Spaltentabelle zeigt standardmäßig die vier Eigenschaften Spaltenname, Datentyp, Pflichtfeld und Standardwert, in dieser festen Reihenfolge:

EigenschaftBeschreibung
SpaltennameName der Spalte in der Datenbanktabelle. Der Name muss innerhalb der Tabelle eindeutig sein.
DatentypDatentyp der Spalte. Je nach gewähltem Datentyp werden die Felder Länge, Genauigkeit und „Nachkommastellen“ (erweiterte Optionen) aktiviert. Wird ein ganzzahliger Datentyp (Int16, Int32, Int64) gewählt und die Spalte gleichzeitig als Primärschlüssel markiert, aktiviert der OPC Router automatisch Automatischer Zähler.
PflichtfeldIst dieser Schalter aktiv, muss die Spalte beim Schreiben einen Wert erhalten; sie darf nicht leer (NULL) bleiben. Ist er deaktiviert, darf die Spalte leer bleiben.
StandardwertWert, der eingetragen wird, wenn kein Eingangswert für die Spalte anliegt. Das Feld ist immer beschreibbar. Bei Pflichtfeldern ist die Angabe eines Standardwerts erforderlich, damit beim Schreiben ohne Eingangswert kein NULL in der Tabelle entstehen kann.
hinweis

In Verbindung mit einer MS Access-Anbindung ist der Datentyp Int64 aus technischen Gründen derzeit nicht konfigurierbar. Das Transferobjekt weist im Dialog darauf hin. Verwenden Sie in diesem Fall Int32 oder Decimal.

Über den Schalter Erweiterte Optionen Anzeigen oberhalb der Spaltentabelle blenden Sie zusätzliche Eigenschaften ein; sie werden rechts an die vier Standardspalten angehängt, deren Reihenfolge dabei unverändert bleibt:

EigenschaftBeschreibung
LängeMaximale Länge der Spalte. Nur für Textspalten und binäre Spalten relevant.
GenauigkeitGesamtzahl der Stellen bei Dezimalspalten. Nur für den Datentyp Decimal relevant.
NachkommastellenAnzahl der Nachkommastellen bei Dezimalspalten. Nur für den Datentyp Decimal relevant.
PrimärschlüsselKennzeichnet die Spalte als Teil des Primärschlüssels. Der Primärschlüssel bestimmt beim Schreiben, ob ein Datensatz eingefügt oder aktualisiert wird.
Automatischer ZählerDie Spalte wird von der Datenbank fortlaufend selbst gefüllt (Auto-Increment/Identity). Nur für Primärschlüsselspalten verfügbar. Ein an diese Spalte angebundener Eingangswert wird nicht geschrieben.
hinweis

Das Ausblenden der erweiterten Optionen ändert nichts am Verhalten: Bereits konfigurierte Werte (z. B. Primärschlüssel oder automatischer Zähler) bleiben erhalten und greifen beim Strukturabgleich und beim Schreiben weiterhin, auch wenn die zugehörigen Spalten gerade nicht angezeigt werden.

hinweis

Für eine Spalte mit Automatischer Zähler wird kein Wert geschrieben, da die Datenbank den Wert selbst vergibt. Ein Primärschlüssel ohne automatischen Zähler muss dagegen über einen angebundenen Eingang gefüllt werden.

Registerkarte: Optionen/Verhalten

Auf dieser Registerkarte legen Sie fest, wie der OPC Router mit Abweichungen zwischen der vorhandenen Tabelle und der definierten Sollstruktur umgeht.

[DB-Log-Table-TO Registerkarte Optionen/Verhalten]

Für die drei Abweichungsfälle stehen jeweils die Aktionen Nichts tun, Fehler und Korrigieren zur Verfügung:

EigenschaftBeschreibung
Abweichende SpalteVerhalten, wenn eine vorhandene Spalte einen anderen Datentyp als in der Sollstruktur hat. Nichts tun: Abweichung wird ignoriert. Fehler: Der Transfer wird mit einem Fehler abgebrochen. Korrigieren: Die betroffene Spalte wird gelöscht und neu erstellt.
Überzählige SpalteVerhalten, wenn die Tabelle eine Spalte enthält, die nicht in der Sollstruktur steht. Nichts tun, Fehler oder Korrigieren (die überzählige Spalte wird entfernt).
Fehlende SpalteVerhalten, wenn eine Spalte der Sollstruktur in der Tabelle fehlt. Nichts tun, Fehler oder Korrigieren (die fehlende Spalte wird ergänzt).
gefahr

Beim Ausführen von Korrigieren für abweichende oder überzählige Spalten werden die betroffenen Spalten gelöscht (und bei abweichenden Spalten neu erstellt). Dabei gehen alle darin enthaltenen Daten dauerhaft verloren.

hinweis

Unterstützt die ausgewählte Datenbank kein Ändern oder Entfernen bestehender Spalten über einen automatischen Strukturabgleich, stehen die Aktionen für abweichende und überzählige Spalten nicht zur Verfügung. Das Hinzufügen fehlender Spalten ist weiterhin möglich.

Erwartete Anzahl eingehender Datensätze prüfen

Aktivieren Sie diese Option, um die eingehenden Daten vor dem Schreiben auf die erwartete Größe zu prüfen. Unter Erwartete Datensätze legen Sie über die Auswahl (Mehr als, Weniger als, Genau) und die Anzahl fest, wie viele Datensätze mindestens, höchstens oder genau vorliegen müssen, damit der Transfer ausgeführt wird.

Schreiben der Datensätze

Nach dem Strukturabgleich schreibt das Transferobjekt die eingehenden Werte in die Tabelle. Ob ein Datensatz eingefügt oder aktualisiert wird, entscheidet der Primärschlüssel. Für Spalten ohne angebundenen Eingangswert gilt:

  • Spalten, die kein Pflichtfeld sind, bleiben leer (NULL), auch dann, wenn für sie ein Standardwert hinterlegt ist.
  • Spalten mit Automatischer Zähler werden von der Datenbank gefüllt.
  • Pflichtfelder verwenden ihren Standardwert. Fehlt dieser, wird ein Fehler ausgelöst.