SEC_SQL-VARA-Objekte

SEC_SQL oder Secure SQL-VARA-Objekte beziehen Werte aus externen Datenbanken. SEC_SQL-VARA-Objekte sind ähnlich wie SQL-VARA-Objekte, da auch sie SQL-Statements auf einer externen Datenbank ausführen. Im Gegensatz zu SQL-VARA-Objekten bieten SEC_SQL-Objekte jedoch die Möglichkeit, alle unterstützten Variablen innerhalb von SQL-Statements zu verwenden – ohne eine mögliche Gefährdung der Datenbank durch SQL-Injection. Die Variablen werden daher unabhängig von der Einstellung VAR_SECURITY_LEVEL in der Variable UC_SYSTEM_SETTINGS - Systemweite Einstellungen ersetzt.

Dieses Thema beinhaltet Folgendes:

SEC_SQL-VARA-Objekte definieren

Die Definition eines SEC_SQL-VARA-Objekts besteht aus den folgenden Seiten:

Überblick

Die Variablen können nicht direkt im Feld SQL-Statement angegeben werden, sondern sind über sogenannte Bind-Parameter einzuschließen. Die Bind-Parameter sind in der entsprechenden Tabelle zu pflegen und können vordefinierte Variablen, Platzhalter für VARA-Objekte und PromptSet-Variablen enthalten. Im SQL-Script ist an der Stelle, an welcher die Bind-Parameter eingefügt werden sollen, das Zeichen „?“ zu verwenden.

Aus technischen Gründen kann nicht geprüft werden, ob nur SELECT-Kommandos im SQL der Variable verwendet werden. Um die Ausführung anderer SQL-Kommandos außer SELECT zu verhindern, ist es ratsam, einen Datenbank-Benutzer zu verwenden, der nur Leserechte besitzt.

Auch für diesen Variablentyp ist ein DB-Service-Agent erforderlich, der im DB-Service-Modus gestartet wurde. Dieser muss allerdings Version v9 SP3 oder höher aufweisen. Ältere Agenten unterstützen den Variablentyp SQL SECURE nicht.

Wichtige Hinweise

Bei der Verwendung von SEC_SQL-VARA-Objekten ist Folgendes zu beachten:

Abschnitt „Variablen-Einstellungen“

Abschnitt „Bind-Parameter“

Mit Bind-Parametern fügen Sie Variablenwerte in SQL-Statements ein. Dabei können Script-Variablen, Objektvariablen, vordefinierte Variablen und Platzhalter für VARA-Objekte verwendet werden, die Sie in diese Tabelle eintragen. Jede Zeile repräsentiert einen Bind-Parameter. Sie können neben Variablennamen für Bind-Parameter auch beliebige Werte angeben.

Unterstützte Datentypen und Eingabeformate:

Andere Feldtypen der Datenbank und andere Formate werden nicht unterstützt. Es erfolgt auch keine Umwandlung von Datentypen (z. B.: von Zeitstempel auf Datum). Wird ein ungültiger Wert eingefügt, kommt es zum Fehler beim Ausführen der SQL-Kommandos.

Wichtig!

Bereich „Vorschau“

Um ein Kommando auszuführen, wählen Sie dieses aus und klicken Sie auf Vorschau. Die Statements werden ausgeführt und die jeweiligen Ergebnisse angezeigt. Die Vorschaufunktion dient der Überprüfung auf mögliche Fehler in den Datenbank-Statements (z. B. ob der Datentyp des VARA-Objekts und der Datenbank nicht übereinstimmen).

Der Datenbank-Agent sendet die Vorschau-Daten in Form einer Nachricht an die Automation Engine. Wenn diese Nachricht die maximale Nachrichtenlänge überschreitet, die ein Serverprozess akzeptiert, tritt ein Fehler auf.

Maximale Länge: Im Parameter „MaxMsgSize= parameter“ der Datei Automation Engine UCSRV.INI festgelegt.

Standardwert: 3145 728 Bytes.

Siehe auch: