Partager via


Fournisseurs de données pour DB2

Compatibilité de la plateforme

Conversions de pages de code

Le fournisseur de données prend en charge une combinaison de jeux de caractères codés sur un octet (SBCS), de jeux de caractères de largeur mixte (MBCS), de jeux de caractères codés sur deux octets (DBCS) et de jeux de caractères Unicode - UTF8 [1208], qui est un format de transformation Unicode de 8 bits.

CCSID de l'hôte

Le fournisseur de données requiert une valeur pour le CCSID (Coded Character Set Identifier) de l'hôte avec lequel exécuter des conversions de page de codes sur des données de chaîne. La valeur CCSID de l'hôte par défaut est EBCDIC – U.S./Canada [37]. En règle générale, les serveurs de base de données IBM DB2 pour z/OS et IBM i utilisent EBCDIC (Extended Binary Coded Decimal Interchange Code).

Page de codes PC

Le fournisseur de données requiert une valeur pour la page de codes PC avec laquelle exécuter des conversions de page de codes sur des données de chaîne. La page de codes PC par défaut est ANSI – Latin I [1252]. Généralement, les consommateurs de données utilisent soit ANSI (American National Standards Institute), soit Unicode.

Traiter le binaire comme caractère

Les fournisseurs de données pour DB2 convertissent automatiquement (en entrée et en sortie) les données de type binaire (CCSID 65535) et chaîne de caractères, en fonction du type de données DB2 et du type de données du consommateur Windows. L’encodage DB2 est déterminé par le CCSID hôte. L’encodage Windows est déterminé par la page de codes PC.

Mappage de type de données

Cette rubrique décrit les mappages de tous les types de données aux types de données OLE DB.

Mappage des types de données DB2 à ADO.NET

Le tableau suivant décrit les mappages des types de données DB2 au fournisseur ADO.NET pour DB2 (MsDb2Client) (MsDb2Type).

MsDb2Type Type de données DB2 Description
BigInt Bigint Un grand entier est un entier binaire codé sur 8 octets.
Binary Binary Une donnée binaire est une chaîne binaire de longueur fixe.
bit Smallint Un petit entier est un entier binaire codé sur deux octets.
BLOB BLOB Un objet blob (Binary Large Object) est une chaîne de longueur variable servant à stocker des données binaires ou non textuelles.
Char Char Il s'agit d'une chaîne SBCS ou MBCS de longueur fixe.
CLOB CLOB Un objet CLOB (Character Large Object) de longueur variable est une chaîne de longueur variable. La longueur maximale de la chaîne dépend de la plateforme et de la version DB2.
Date Date Il s'agit d'une chaîne codée sur 10 octets.
DBCLOB DCLOB Un objet CLOB (Character Large Object) de longueur variable codé sur deux octets est une chaîne graphique de longueur variable codée sur deux octets uniquement. La longueur maximale de la chaîne dépend de la plateforme et de la version DB2.
Decimal Decimal Une donnée décimale est un nombre décimal compressé.
Double Double Une donnée double est un nombre à virgule flottante double précision codé sur 8 octets.
Graphic Graphic Il s'agit d'une chaîne DBCS unique de longueur fixe.
Int Integer Il s'agit d'un entier binaire codé sur 4 octets.
Numérique Numérique Il s'agit d'un nombre décimal compressé.
Real Real Il s'agit d'un nombre à virgule flottante simple précision codé sur 4 octets.
SmallInt Smallint Un petit entier est un entier binaire codé sur deux octets.
Temps Temps Il s'agit d'une chaîne de temps codée sur 8 octets.
Timestamp Timestamp Il s'agit d'une chaîne codée sur 26 octets représentant la date, l'heure et les microsecondes.
TinyInt Smallint Un petit entier est un entier binaire codé sur deux octets.
VarBinary Varbinary Une donnée binaire variable est une chaîne binaire de longueur variable.
VarChar Varchar Il s'agit d'une chaîne de caractères SBCS ou MBCS de longueur variable.
VarGraphic Vargraphic Un graphique variable est une chaîne DBCS unique de longueur variable.
VarWideChar Vargraphic Une donnée graphique variable est une chaîne Unicode uniquement de longueur variable.
VarWideGraphic Vargraphic Une donnée graphique variable est une chaîne Unicode uniquement de longueur variable.
WideChar Graphic Une donnée graphique est une chaîne Unicode de longueur fixe.
Xml XML Chaîne d’un document XML bien formé.

Mappage des types de données DB2 aux types de données OLE DB

Le tableau suivant décrit les mappages des types de données DB2 aux types de données OLE DB.

Type de données OLE DB Type de données DB2 Description
DBTYPE_I8 Bigint Un grand entier est un entier binaire codé sur 8 octets.
DBTYPE_Bytes BINARY Une donnée binaire est une chaîne binaire de longueur fixe
DBTYPE_Bytes BLOB Un objet blob (Binary Large Object) est une chaîne de longueur variable servant à stocker des données binaires ou non textuelles.
DBTYPE_STR Char Il s'agit d'une chaîne SBCS ou MBCS de longueur fixe.
DBTYPE_WSTR Char Un caractère Unicode est une chaîne MBCS de longueur fixe.
DBTYPE_STR CLOB Un objet CLOB (Character Large Object) de longueur variable est une chaîne de longueur variable. La longueur maximale de la chaîne dépend de la plateforme et de la version DB2.
DBTYPE_DBDate Date Il s'agit d'une chaîne codée sur 10 octets.
DBTYPE_Decimal Decimal Une donnée décimale est un nombre décimal compressé.
DBTYPE_R8 Double Une donnée double est un nombre à virgule flottante double précision codé sur 8 octets.
DBTYPE_R8 Float Il s'agit d'un nombre à virgule flottante double précision codé sur 8 octets.
DBTYPE_WSTR Graphic Il s'agit d'une chaîne DBCS unique de longueur fixe.
DBTYPE_I4 Integer Il s'agit d'un entier binaire codé sur 4 octets.
DBTYPE_STR Long Varchar Il s'agit d'une chaîne de caractères SBCS ou MBCS de longueur variable.
DBTYPE_WSTR Long Varchar Chaîne Unicode de longueur variable.
DBTYPE_WSTR Long Vargraphic Un graphique variable est une chaîne DBCS unique de longueur variable.
DBTYPE_Numeric Numérique Il s'agit d'un nombre décimal compressé.
DBTYPE_I2 Smallint Un petit entier est un entier binaire codé sur deux octets.
DBTYPE_R4 Real Il s'agit d'un nombre à virgule flottante simple précision codé sur 4 octets.
DBTYPE_DBTime Temps Il s'agit d'une chaîne de temps codée sur 8 octets.
DBTYPE_DBTimestamp Timestamp Il s'agit d'une chaîne codée sur 26 octets représentant la date, l'heure et les microsecondes.
DBTYPE_Bytes Varbinary Une donnée binaire variable est une chaîne binaire de longueur variable.
DBTYPE_STR Varchar Il s'agit d'une chaîne de caractères SBCS ou MBCS de longueur variable.
DBTYPE_WSTR Varchar Chaîne Unicode de longueur variable.
DBTYPE_WSTR VarGraphic Un graphique variable est une chaîne DBCS unique de longueur variable.

Les informations sur le schéma contenues dans OLE DB sont extraites à l'aide d'ensembles de lignes de schéma prédéfinis avec IDBSchemaRowset::GetRowset. Le fournisseur de données a exposé l'ensemble de lignes PROVIDER_TYPES pour indiquer la prise en charge du type de données DB2 à OLE DB (types, mappages et limites), d'après la plateforme et la version IBM DB2.

DB2 pour z/OS

Le fournisseur de données prend en charge l’accès à ces types de données lorsqu’il est connecté à DB2 pour z/OS.

Type_name DB2 data_type OLE DB Column_size Minimum_scale Maximum_scale
Smallint DBType_12 5
Integer DBType_14 10
Bigint DBType_18 19
Binary DBType_Bytes 255
Real DBType_R4 21
Float DBType_R8 53
Double DBType_R8 53
Decimal DBType_Decimal 31 0 31
Graphic DBType_WSTR 127
VarGraphic DBType_WSTR 16352
Char DBType_STR 255
Varchar DBType_STR 32672
Char DBType_WSTR 255
Varchar DBType_WSTR 32672
Numérique DBType_Numeric 31 0 31
Date DBType_DBDate 10
Temps DBType_DBTime 8
Timestamp DBType_Timestamp 26
BLOB DBType_Bytes 2147483647
CLOB DBType_STR 2147483647
Long Varchar DBType_STR 32704
Long Varchar DBType_WSTR 32704
Long Vargraphic DBType_WSTR 16352
Varbinary DBTypte_Bytes 32704

DB2 pour IBM i

Le fournisseur de données prend en charge l’accès à ces types de données lorsqu’il est connecté à DB2 pour IBM i.

Type_name DB2 data_type OLE DB Column_size Minimum_scale Maximum_scale
Binary DBType_Bytes 32765
Smallint DBType_12 5
Integer DBType_14 10
Bigint DBType_18 19
Real DBType_R4 24
Float DBType_R8 53
Double DBType_R8 53
Decimal DBType_Decimal 63 0 31
Graphic DBType_WSTR 16382
VarGraphic DBType_WSTR 16369
Char DBType_STR 32765
Varchar DBType_STR 32739
Char DBType_WSTR 32765
Varchar DBType_WSTR 32739
Numérique DBType_Numeric 31 0 31
Date DBType_DBDate 10
Temps DBType_DBTime 8
Timestamp DBType_Timestamp 26
BLOB DBType_Bytes 2147483647
CLOB DBType_STR 2147483647
Varbinary DBType_Bytes 32739

DB2 pour LUW

Le fournisseur de données prend en charge l’accès à ces types de données lorsqu’il est connecté à DB2 pour LUW.

Type_name DB2 data_type OLE DB Column_size Minimum_scale Maximum_scale
Binary DBType_Bytes 254
Smallint DBType_12 5
Integer DBType_14 10
Bigint DBType_18 19
Real DBType_R4 24
Float DBType_R8 53
Double DBType_R8 53
Decimal DBType_Decimal 31 0 31
Graphic DBType_WSTR 127
VarGraphic DBType_WSTR 16336
Char DBType_STR 254
Varchar DBType_STR 4000
Char DBType_WSTR 254
Varchar DBType_WSTR 4000
Char() for BIT data DBType_Bytes 254
Varchar() for BIT data DBType_Bytes 32672
Numérique DBType_Numeric 31 0 31
Date DBType_DBDate 10
Temps DBType_DBTime 8
Timestamp 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

Lorsque vous utilisez l'Assistant Importation et Exportation SQL Server Integration Services depuis Microsoft SQL Server Management Studio, vous pouvez personnaliser les conversions de données par défaut en modifiant les fichiers de mappage XML. Les fichiers XML se trouvent dans C :\Program Files\Microsoft SQL Server\130\DTSMappingFiles pour 64 bits et C :\Program Files (x86)\Microsoft SQL Server\130\DTSMappingFiles pour 32 bits.

SQL Server Replication Services

La réplication SQL Server peut convertir des données de manière incorrecte, sur la base des mappages par défaut de SQL Server aux types de données DB2. Il est recommandé que l'administrateur et le développeur examinent et révisent les mappages des types de données de réplication à l'aide des procédures stockées système de SQL Server.