Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Plattformkompatibilität
Codeseitenkonvertierungen
Der Datenanbieter unterstützt eine Kombination aus Einzelnen-Byte-Zeichensätzen (SBCS), Mixed-Byte-Zeichensätzen (MBCS) double-byte character sets (DBCS) und Unicode - UTF8 [1208], bei dem es sich um ein 8-Bit-Unicode-Transformationsformat handelt.
Host CCSID
Der Datenanbieter erfordert einen Wert für Host CCSID (Coded Character Set Identifier), mit dem Codeseitenkonvertierungen für Zeichenfolgendaten ausgeführt werden können. Der Standardmäßige Host CCSID-Wert ist EBCDIC – USA/Kanada [37]. In der Regel verwenden IBM DB2-Datenbankserver für z/OS und IBM i EBCDIC (Extended Binary Coded Decimal Interchange Code).
PC-Codeseite
Der Datenanbieter erfordert einen Wert für die PC-Codeseite, mit der Codeseitenkonvertierungen für Zeichenfolgendaten ausgeführt werden können. Die Standard-PC-Codeseite ist ANSI – Lateinisch I [1252]. Datenkonsumenten verwenden in der Regel entweder ANSI (American National Standards Institute) oder Unicode.
Binärdatei als Zeichen verarbeiten
Die Datenanbieter für DB2 werden automatisch in binär (CCSID 65535) und Zeichenzeichenfolgendatentypen basierend auf dem DB2-Datentyp und dem Windows Consumer-Datentyp konvertiert. Die DB2-Codierung wird durch die Host-CCSID bestimmt. Die Windows-Codierung wird von der PC-Codeseite bestimmt.
Datentypzuordnung
In diesem Thema werden alle Datentypzuordnungen zu OLE DB-Datentypen beschrieben.
DB2-zu-ADO.NET-Datentypzuordnung
In der folgenden Tabelle werden DB2-Datentypzuordnungen zu ADO.NET Provider für DB2-Datentypen (MsDb2Client) (MsDb2Type) beschrieben.
| MsDb2Type | DB2-Datentyp | Beschreibung |
|---|---|---|
| BigInt | Bigint | Eine große ganze Zahl ist eine 8-Byte-Binärzahl. |
| Binär | Binär | Eine Binärdatei ist eine binäre Zeichenfolge mit fester Länge. |
| Bit | Smallint | Eine kleine ganze Zahl ist eine 2-Byte-Binärzahl. |
| BLOB | BLOB | Ein binäres großes Objekt ist eine Zeichenfolge mit unterschiedlicher Länge, die zum Speichern nicht textbezogener oder binärer Daten verwendet wird. |
| Char | Char | Ein Zeichen ist eine SBCS- oder MBCS-Zeichenfolge mit fester Länge. |
| CLOB | CLOB | Ein großes Objekt mit unterschiedlicher Länge ist eine Zeichenfolge mit unterschiedlicher Länge. Die maximale Länge der Zeichenfolge hängt von der DB2-Plattform und -Version ab. |
| Datum | Datum | Ein Datum ist eine 10-Byte-Zeichenfolge. |
| DBCLOB | DCLOB | Ein großes Objekt mit doppeltem Byte-Zeichen mit unterschiedlicher Länge ist eine Zeichenfolge mit unterschiedlicher Länge. Die maximale Länge der Zeichenfolge hängt von der DB2-Plattform und -Version ab. |
| Decimal | Decimal | Eine Dezimalzahl ist eine gepackte Dezimalzahl. |
| Double | Double | Ein Double ist eine Gleitkommazahl mit doppelter Genauigkeit von 8 Byte. |
| Grafik | Grafik | Eine Grafik ist eine dbCS-Zeichenfolge mit fester Länge. |
| Int | Integer | Eine ganze Zahl ist eine 4-Byte-Binärzahl. |
| Numerisch | Numerisch | Eine Zahl ist eine gepackte Dezimalzahl. |
| Real | Real | Ein Real ist eine 4-Byte-Gleitkommazahl mit einfacher Genauigkeit. |
| SmallInt | Smallint | Eine kleine ganze Zahl ist eine 2-Byte-Binärzahl. |
| Uhrzeit | Uhrzeit | Eine Zeit ist eine 8-Byte-Zeitzeichenfolge. |
| Zeitstempel | Zeitstempel | Ein Zeitstempel ist eine 26-Byte-Zeichenfolge, die Datum, Uhrzeit und Mikrosekunden darstellt. |
| TinyInt | Smallint | Eine kleine ganze Zahl ist eine 2-Byte-Binärzahl. |
| VarBinary | Varbinary | Eine unterschiedliche Binärdatei ist eine Zeichenfolge mit unterschiedlicher Länge. |
| VarChar | Varchar | Ein unterschiedliches Zeichen ist eine unterschiedliche SBCS- oder MBCS-Zeichenzeichenfolge. |
| VarGraphic | Variegraphisch | Eine unterschiedliche Grafik ist eine Zeichenfolge mit unterschiedlicher Länge. |
| VarWideChar | Variegraphisch | Eine unterschiedliche Grafik ist eine unicode-Zeichenfolge mit unterschiedlicher Länge. |
| VarWideGraphic | Variegraphisch | Eine unterschiedliche Grafik ist eine unicode-Zeichenfolge mit unterschiedlicher Länge. |
| WideChar | Grafik | Eine Grafik ist eine Unicode-Zeichenfolge mit fester Länge. |
| XML | XML | Eine wohlgeformte XML-Dokumentzeichenfolge. |
DB2-zu-OLE DB-Datentypzuordnung
In der folgenden Tabelle werden DB2-Datentypzuordnungen zu OLE DB-Datentypen beschrieben.
| OLE DB-Datentyp | DB2-Datentyp | Beschreibung |
|---|---|---|
| DBTYPE_I8 | Bigint | Eine große ganze Zahl ist eine 8-Byte-Binärzahl. |
| Dbtype_bytes | BINÄR | Eine Binärdatei ist eine binäre Zeichenfolge mit fester Länge. |
| Dbtype_bytes | BLOB | Ein binäres großes Objekt ist eine Zeichenfolge mit unterschiedlicher Länge, die zum Speichern nicht textbezogener oder binärer Daten verwendet wird. |
| DBTYPE_STR | Char | Ein Zeichen ist eine SBCS- oder MBCS-Zeichenfolge mit fester Länge. |
| DBTYPE_WSTR | Char | Ein Unicode-Zeichen ist eine MBCS-Zeichenfolge mit fester Länge. |
| DBTYPE_STR | CLOB | Ein großes Objekt mit unterschiedlicher Länge ist eine Zeichenfolge mit unterschiedlicher Länge. Die maximale Länge der Zeichenfolge hängt von der DB2-Plattform und -Version ab. |
| DBTYPE_DBDate | Datum | Ein Datum ist eine 10-Byte-Zeichenfolge. |
| DBTYPE_Decimal | Decimal | Eine Dezimalzahl ist eine gepackte Dezimalzahl. |
| DBTYPE_R8 | Double | Ein Double ist eine Gleitkommazahl mit doppelter Genauigkeit von 8 Byte. |
| DBTYPE_R8 | Schweben | Ein Float ist eine Gleitkommazahl mit doppelter Genauigkeit von 8 Byte. |
| DBTYPE_WSTR | Grafik | Eine Grafik ist eine dbCS-Zeichenfolge mit fester Länge. |
| DBTYPE_I4 | Integer | Eine ganze Zahl ist eine 4-Byte-Binärzahl. |
| DBTYPE_STR | Long Varchar | Ein unterschiedliches Zeichen ist eine unterschiedliche SBCS- oder MBCS-Zeichenzeichenfolge. |
| DBTYPE_WSTR | Long Varchar | Eine unterschiedliche Unicode-Zeichenfolge mit unterschiedlicher Länge. |
| DBTYPE_WSTR | Long Vargraphic | Eine unterschiedliche Grafik ist eine Zeichenfolge mit unterschiedlicher Länge. |
| Dbtype_numeric | Numerisch | Eine Zahl ist eine gepackte Dezimalzahl. |
| DBTYPE_I2 | Smallint | Eine kleine ganze Zahl ist eine 2-Byte-Binärzahl. |
| DBTYPE_R4 | Real | Ein Real ist eine 4-Byte-Gleitkommazahl mit einfacher Genauigkeit. |
| DBTYPE_DBTime | Uhrzeit | Eine Zeit ist eine 8-Byte-Zeitzeichenfolge. |
| Dbtype_dbtimestamp | Zeitstempel | Ein Zeitstempel ist eine 26-Byte-Zeichenfolge, die Datum, Uhrzeit und Mikrosekunden darstellt. |
| Dbtype_bytes | Varbinary | Eine unterschiedliche Binärdatei ist eine Zeichenfolge mit unterschiedlicher Länge. |
| DBTYPE_STR | Varchar | Ein unterschiedliches Zeichen ist eine unterschiedliche SBCS- oder MBCS-Zeichenzeichenfolge. |
| DBTYPE_WSTR | Varchar | Eine unterschiedliche Unicode-Zeichenfolge mit unterschiedlicher Länge. |
| DBTYPE_WSTR | VarGraphic | Eine unterschiedliche Grafik ist eine Zeichenfolge mit unterschiedlicher Länge. |
Schemainformationen in OLE DB werden mithilfe vordefinierter Schema-Rowsets mit IDBSchemaRowset::GetRowset abgerufen. Der Datenanbieter hat das PROVIDER_TYPES Rowset verfügbar gemacht, um die Unterstützung des DB2-Datentyps (Typen, Zuordnungen, Grenzwerte) basierend auf der IBM DB2-Plattform und -Version anzugeben.
DB2 für z/OS
Der Datenanbieter unterstützt den Zugriff auf diese Datentypen, wenn eine Verbindung mit DB2 für z/OS hergestellt wird.
| DB2-Type_name | OLE DB-data_type | Column_size | Minimum_scale | Maximum_scale |
|---|---|---|---|---|
| Smallint | DBType_12 | 5 | ||
| Integer | DBType_14 | 10 | ||
| Bigint | DBType_18 | 19 | ||
| Binär | Dbtype_bytes | 255 | ||
| Real | DBType_R4 | 21 | ||
| Schweben | DBType_R8 | 53 | ||
| Double | DBType_R8 | 53 | ||
| Decimal | DBType_Decimal | 31 | 0 | 31 |
| Grafik | Dbtype_wstr | 127 | ||
| VarGraphic | Dbtype_wstr | 16352 | ||
| Char | Dbtype_str | 255 | ||
| Varchar | Dbtype_str | 32,672 | ||
| Char | Dbtype_wstr | 255 | ||
| Varchar | Dbtype_wstr | 32,672 | ||
| Numerisch | Dbtype_numeric | 31 | 0 | 31 |
| Datum | DBType_DBDate | 10 | ||
| Uhrzeit | DBType_DBTime | 8 | ||
| Zeitstempel | DBType_Timestamp | 26 | ||
| BLOB | Dbtype_bytes | 2147483647 | ||
| CLOB | Dbtype_str | 2147483647 | ||
| Long Varchar | Dbtype_str | 32,704 | ||
| Long Varchar | Dbtype_wstr | 32,704 | ||
| Long Vargraphic | Dbtype_wstr | 16352 | ||
| Varbinary | DBTypte_Bytes | 32,704 |
DB2 für IBM i
Der Datenanbieter unterstützt den Zugriff auf diese Datentypen, wenn eine Verbindung mit DB2 für IBM i hergestellt wird.
| DB2-Type_name | OLE DB-data_type | Column_size | Minimum_scale | Maximum_scale |
|---|---|---|---|---|
| Binär | Dbtype_bytes | 32765 | ||
| Smallint | DBType_12 | 5 | ||
| Integer | DBType_14 | 10 | ||
| Bigint | DBType_18 | 19 | ||
| Real | DBType_R4 | 24 | ||
| Schweben | DBType_R8 | 53 | ||
| Double | DBType_R8 | 53 | ||
| Decimal | DBType_Decimal | 63 | 0 | 31 |
| Grafik | Dbtype_wstr | 16382 | ||
| VarGraphic | Dbtype_wstr | 16369 | ||
| Char | Dbtype_str | 32765 | ||
| Varchar | Dbtype_str | 32739 | ||
| Char | Dbtype_wstr | 32765 | ||
| Varchar | Dbtype_wstr | 32739 | ||
| Numerisch | Dbtype_numeric | 31 | 0 | 31 |
| Datum | DBType_DBDate | 10 | ||
| Uhrzeit | DBType_DBTime | 8 | ||
| Zeitstempel | DBType_Timestamp | 26 | ||
| BLOB | Dbtype_bytes | 2147483647 | ||
| CLOB | Dbtype_str | 2147483647 | ||
| Varbinary | Dbtype_bytes | 32739 |
DB2 für LUW
Der Datenanbieter unterstützt den Zugriff auf diese Datentypen, wenn eine Verbindung mit DB2 für LUW hergestellt wird.
| DB2-Type_name | OLE DB-data_type | Column_size | Minimum_scale | Maximum_scale |
|---|---|---|---|---|
| Binär | Dbtype_bytes | 254 | ||
| Smallint | DBType_12 | 5 | ||
| Integer | DBType_14 | 10 | ||
| Bigint | DBType_18 | 19 | ||
| Real | DBType_R4 | 24 | ||
| Schweben | DBType_R8 | 53 | ||
| Double | DBType_R8 | 53 | ||
| Decimal | DBType_Decimal | 31 | 0 | 31 |
| Grafik | Dbtype_wstr | 127 | ||
| VarGraphic | Dbtype_wstr | 16336 | ||
| Char | Dbtype_str | 254 | ||
| Varchar | Dbtype_str | 4000 | ||
| Char | Dbtype_wstr | 254 | ||
| Varchar | Dbtype_wstr | 4000 | ||
| Zeichen() für BIT-Daten | Dbtype_bytes | 254 | ||
| Varchar() für BIT-Daten | Dbtype_bytes | 32,672 | ||
| Numerisch | Dbtype_numeric | 31 | 0 | 31 |
| Datum | DBType_DBDate | 10 | ||
| Uhrzeit | DBType_DBTime | 8 | ||
| Zeitstempel | DBType_Timestamp | 26 | ||
| BLOB | Dbtype_bytes | 2147483647 | ||
| CLOB | Dbtype_str | 2147483647 | ||
| Long Varchar | Dbtype_str | 32700 | ||
| Long Varchar | Dbtype_str | 32700 | ||
| Long Varchar | Dbtype_wstr | 16350 | ||
| Varbinary | DBTYPE_BYTES | 32762 |
SQL Server Integration Services
Wenn Sie die IMPORT- und Export-Assistenten für SQL Server-Integrationsdienste aus Microsoft SQL Server Management Studio verwenden, können Sie die Standarddatenkonvertierungen anpassen, indem Sie die XML-Zuordnungsdateien bearbeiten. Die XML-Dateien befinden sich unter C:\Programme\Microsoft SQL Server\130\DTSMappingFiles für 64-Bit- und C:\Programme (x86)\Microsoft SQL Server\130\DTSMappingFiles für 32-Bit.
SQL Server-Replikationsdienste
Die SQL Server-Replikation kann Daten basierend auf den Standardzuordnungen von SQL Server zu DB2-Datentypen falsch konvertieren. Es wird empfohlen, dass der Administrator und der Entwickler die Replikationsdatentypzuordnungen mithilfe der folgenden gespeicherten SQL Server-Prozeduren überprüfen und überarbeiten.
·sp_helpdatatypemap
·sp_getdefaultdatatypemapping
·sp_setdefaultdatatypemapping
Weitere Informationen finden Sie in den gespeicherten Systemprozeduren (Transact-SQL).