Datentypen von Werten aus externen Quellen

ESQL kann Daten von zwei externen Quellen extrahieren: Nachrichtenfelder und Datenbankspalten.

Der ESQL-Datentyp von Nachrichtenfeldern hängt vom Typ der Nachricht (z. B. XML) und vom Parser ab, der für deren Syntaxanalyse verwendet wird. Der ESQL-Datentyp des Wertes, der von einem Datenbankspaltenverweis zurückgegeben wird, hängt vom Datentyp der Spalte in der Datenbank ab.

Die folgende Tabelle zeigt, in welche ESQL-Datentypen die verschiedenen integrierten Datenbankdatentypen umgesetzt werden, wenn Nachrichtenflüsse, die im Broker aktiv sind, darauf zugreifen.

Die Versionen, die für die in dieser Liste aufgeführten Datenbankprodukte unterstützt werden, sind in Unterstützte Datenbanken aufgelistet.

Datentyp DB2 SQL Server und Sybase Oracle Informix
BOOLEAN   BIT    
INTEGER SMALLINT, INTEGER, BIGINT INT, SMALLINT, TINYINT   INT, SMALLINT
FLOAT REAL, DOUBLE FLOAT, REAL NUMBER()1 FLOAT, SMALLFLOAT, DOUBLE
DECIMAL DECIMAL DECIMAL, NUMERIC, MONEY, SMALLMONEY NUMBER(P)1, NUMBER(P,S)1 DECIMAL, MONEY
CHARACTER CHAR, VARCHAR, CLOB CHAR, VARCHAR, TEXT CHAR, VARCHAR2, ROWID, UROWID, LONG, CLOB CHAR, VARCHAR, CHAR VARYING
TIME TIME      
GMTTIME        
DATE DATE     DATE
TIMESTAMP TIMESTAMP Beginn der ÄnderungDATETIME, SMALLDATETIME, TIMESTAMPEnde der Änderung DATE DATETIME
GMTTIMESTAMP        
INTERVAL       INTERVAL
BLOB BLOB Beginn der ÄnderungBINARY, VARBINARY, IMAGE, UNIQUEIDENTIFIEREnde der Änderung RAW LONG, RAW BLOB  
BIT        
Anmerkung:
  1. Wenn eine Oracle-Datenbankspalte mit dem Datentyp NUMBER mit einer expliziten Genauigkeit (P) und Anzahl der Kommastellen (S) definiert wird, wird sie einen ESQL-Wert vom Typ DECIMAL umgesetzt; andernfalls wird sie in einem Wert vom Typ FLOAT umgesetzt.
    Beispielsweise ergibt die ESQL-Anweisung:
    SET OutputRoot.xxx[]
     = (SELECT T.department FROM Database.personnel AS T);

    wobei Database.personnel zu einer TINYINT-Spalte in einer SQL Server-Datenbanktabelle aufgelöst wird, eine Liste mit ESQL-Werten vom Typ INTEGER, die OutputRoot.xxx zugeordnet werden.

    Im Gegensatz dazu ergibt eine identische Abfrage, bei der Database.personnel zu einer NUMBER()-Spalte in einer Oracle-Datenbank aufgelöst wird, eine Liste mit ESQL-Werten vom Typ FLOAT, die OutputRoot.xxx zugeordnet werden.

Zugehörige Konzepte
Übersicht zu ESQL
Zugehörige Tasks
ESQL erstellen
Zugehörige Verweise
Unterstützung für Unicode- und DBCS-Daten in Datenbanken
Komplexe ESQL-Funktionen
CAST-Funktion
Unterstützte Umsetzungen
Implizite Umsetzungen
Unterstützte Datenbanken
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
Letzte Aktualisierung : 2009-02-17 15:29:32

ak05730_