Mapping dei tipi di dati ai tipi di dati OLE DB
In questo argomento vengono descritti i mapping di tutti i tipi di dati a quelli di OLE DB.
Mapping dei tipi di dati da DB2 a OLE DB
Nella tabella seguente viene illustrato il mapping tra i tipi di dati DB2 e OLE DB.
Tipo di dati OLE DB | Tipo di dati DB2 | Descrizione |
---|---|---|
DBTYPE_I8 | Bigint | Un numero intero grande è un numero intero binario a 8 byte. |
DBTYPE_Bytes | BINARY | Un file binario è una stringa binaria a lunghezza fissa |
DBTYPE_Bytes | BLOB | Un oggetto binario di grandi dimensioni è una stringa di lunghezza variabile usata per archiviare dati non testuali o binari. |
DBTYPE_STR | Char | Un carattere è una stringa SBCS o MBCS di lunghezza fissa. |
DBTYPE_WSTR | Char | Un carattere Unicode è una stringa MBCS di lunghezza fissa. |
DBTYPE_STR | CLOB | Un oggetto grande carattere di lunghezza variabile è una stringa di lunghezza variabile. La lunghezza massima della stringa dipende dalla versione e dalla piattaforma DB2. |
DBTYPE_DBDate | Data | Un tipo di dati Date è una stringa di 10 byte. |
DBTYPE_Decimal | Decimal | Un tipo di dati Decimal è un numero decimale compresso. |
DBTYPE_R8 | Double | Un tipo di dati Double è un numero di 8 byte a virgola mobile a precisione doppia. |
DBTYPE_R8 | Float | Un tipo di dati Float è un numero di 8 byte a virgola mobile a precisione doppia. |
DBTYPE_WSTR | Graphic | Un tipo di dati Graphic è una stringa DBCS di lunghezza fissa. |
DBTYPE_I4 | Integer | Un tipo di dati Integer è un intero binario di 4 byte. |
DBTYPE_STR | Long Varchar | Un tipo di dati Varchar è una stringa di caratteri SBCS o MBCS di lunghezza variabile. |
DBTYPE_WSTR | Long Varchar | Stringa Unicode a lunghezza variabile. |
DBTYPE_WSTR | Long Vargraphic | Un tipo di dati VarGraphic è una stringa di caratteri DBCS di lunghezza variabile. |
DBTYPE_Numeric | Numeric | Un tipo di dati Numeric è un numero decimale compresso. |
DBTYPE_I2 | Smallint | Un numero intero piccolo è un numero intero binario a due byte. |
DBTYPE_R4 | Real | Un tipo di dati Real è un numero di 4 byte a virgola mobile a singola precisione. |
DBTYPE_DBTime | Ora | Un tipo di dati Time è una stringa di 8 byte contenente un'ora. |
DBTYPE_DBTimestamp | Timestamp | Un tipo di dati TimesStamp è una stringa di 26 byte che rappresenta data, ora e microsecondi. |
DBTYPE_Bytes | Varbinary | Un file binario variabile è una stringa binaria a lunghezza variabile. |
DBTYPE_STR | Varchar | Un tipo di dati Varchar è una stringa di caratteri SBCS o MBCS di lunghezza variabile. |
DBTYPE_WSTR | Varchar | Stringa Unicode a lunghezza variabile. |
DBTYPE_WSTR | VarGraphic | Un tipo di dati VarGraphic è una stringa di caratteri DBCS di lunghezza variabile. |
Tipi di dati per piattaforma DB2
Le informazioni sullo schema di OLE DB vengono recuperate utilizzando set predefiniti di righe dello schema con IDBSchemaRowset::GetRowset. Il provider di dati ha esposto il set di righe PROVIDER_TYPES per indicare il supporto del mapping dei tipi di dati da DB2 a OLE DB (tipi, mapping, limiti) in base alla piattaforma e alla versione di IBM DB2.
DB2 per z/OS
Il provider di dati supporta l'accesso a questi tipi di dati quando si è connessi a DB2 per z/OS.
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 | ||
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 | ||
Numeric | DBType_Numeric | 31 | 0 | 31 |
Data | DBType_DBDate | 10 | ||
Ora | 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 per i
Il provider di dati supporta l'accesso a questi tipi di dati quando si è connessi a DB2 per i.
DB2 Type_name | OLE DB data_type | 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 | ||
Numeric | DBType_Numeric | 31 | 0 | 31 |
Data | DBType_DBDate | 10 | ||
Ora | DBType_DBTime | 8 | ||
Timestamp | DBType_Timestamp | 26 | ||
BLOB | DBType_Bytes | 2147483647 | ||
CLOB | DBType_STR | 2147483647 | ||
Varbinary | DBType_Bytes | 32739 |
DB2 per LUW
Il provider di dati supporta l'accesso a questi tipi di dati quando si è connessi a DB2 per LUW.
DB2 Type_name | OLE DB data_type | 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 | ||
Numeric | DBType_Numeric | 31 | 0 | 31 |
Data | DBType_DBDate | 10 | ||
Ora | 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
Quando si utilizzano le procedure guidate di importazione ed esportazione di SQL Server Integration Services da Microsoft SQL Server Management Studio, è possibile personalizzare le conversioni di dati predefinite modificando i file di mapping XML. I file XML si trovano nel percorso C:\Programmi\Microsoft SQL Server\100\DTS\MappingFiles.
Servizi di replica di SQL Server
È possibile che la replica di SQL Server converta erroneamente i dati, in base ai mapping predefiniti, dai tipi di dati di SQL Server a quelli di DB2. È consigliabile che l'amministratore e lo sviluppatore esaminino e verifichino i mapping dei tipi di dati di replica utilizzando le stored procedure di sistema di SQL Server riportate di seguito.
sp_helpdatatypemap
sp_getdefaultdatatypemapping
sp_setdefaultdatatypemapping
Per altre informazioni, vedere l'argomento Stored procedure di sistema (Transact-SQL) (https://go.microsoft.com/fwlink/?LinkId=241519) nella documentazione online di SQL Server.