Datentypen für OLE DB-Provider

Umsetzung

Beim Arbeiten mit einem Consumer der OLE DB unterstützt, werden die WinCC OA Datentypen in die hier angegebenen Typen umgesetzt:

WinCC OA Datentyp OLE DB-Datentypen
struct -
bit32 DBTYPE_UI4
bool DBTYPE_BOOL
char DBTYPE_UI1
float DBTYPE_R8
int DBTYPE_I4
unsigned DBTYPE_I4
string DBTYPE_BSTR
langstring DBTYPE_BSTR (CONV.)
time DBTYPE_DATE
typeref -
dpid DBTYPE_BSTR
blob -
dyn_bool ARRAY |DBTYPE_BOOL
dyn_int ARRAY |DBTYPE_I4
dyn_uint ARRAY |DBTYPE_UI4
dyn_float ARRAY |DBTYPE_R8
dyn_string ARRAY |DBTYPE_BSTR
dyn_langString ARRAY |DBTYPE_BSTR (CONV:)
dyn_bit32 ARRAY |DBTYPE_UI4
dyn_char ARRAY |DBTYPE_UI1
dyn_time ARRAY |DBTYPE_DATE
dyn_dpid ARRAY |DBTYPE_BSTR
dyn_blob -
bool array ARRAY |DBTYPE_BOOL
int array ARRAY|DBTYPE_I4
uint array ARRAY|DBTYPE_UI4
float array ARRAY|DBTYPE_R8
string array ARRAY|DBTYPE_BSTR
langString array ARRAY|DBTYPE_BSTR
bit32 array ARRAY|DBTYPE_UI4
char array ARRAY|DBTYPE_UI1
time array ARRAY|DBTYPE_DATE
dpid array ARRAY|DBTYPE_BSTR
blob array -

Anmerkung:

Die Integer-Datentypen (ausgenommen I2) funktionieren unter Excel 97 nicht, d.h. bei OLE DB-Zugriff über VBA wird ein Laufzeitfehler zurückgegeben. Dies ist ein Excel 97 spezifisches Problem!

Konvertierung der Datentypen

Wird mit VB-Programmen gearbeitet, so gilt folgende Konvertierungsmatrix beim Einlesen von Daten in Variablen eines gewissen Typs:

Von/Nach bit32 bool char float int unsigned string langString time
bit32 x - - - x x x - -
bool - x x x x x x - -
char - - x x x x x - -
float - x - x x x x - -
int x x - x x x x - x
unsigned x x - x x x x - x
string - x x x - - x - -
langString - - - - - - x x -
time - - - - x x x - x