Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Compatibilità della piattaforma
Conversioni della tabella codici
Il provider di dati supporta una combinazione di set di caratteri a byte singolo (SBCS), set di caratteri a byte misti (MBCS) set di caratteri a byte doppio (DBCS) e Unicode - UTF8 [1208], ovvero un formato di trasformazione Unicode a 8 bit.
Host CCSID
Il provider di dati richiede un valore per Host CCSID (Identificatore set di caratteri codificati) con cui eseguire conversioni della tabella codici sui dati stringa. Il valore CCSID host predefinito è EBCDIC - U.S./Canada [37]. In genere, i server di database IBM DB2 per z/OS e IBM i usano EBCDIC (Codice interscambio decimale codificato binario esteso).
Tabella codici PC
Il provider di dati richiede un valore per la tabella codici del PC con cui eseguire conversioni della tabella codici sui dati stringa. La tabella codici PC predefinita è ANSI - Latino I [1252]. In genere, i consumer di dati usano ANSI (American National Standards Institute) o Unicode.
Processo binario come carattere
I provider di dati per DB2 converte automaticamente in e da tipi di dati binari (CCSID 65535) e stringa di caratteri, in base al tipo di dati DB2 e al tipo di dati consumer Windows. La codifica DB2 è determinata dal CCSID host. La codifica di Windows è determinata dalla tabella codici del PC.
Mapping dei tipi di dati
In questo argomento vengono descritti tutti i mapping dei tipi di dati ai tipi di dati OLE DB.
Mapping dei tipi di dati da DB2 a ADO.NET
Nella tabella seguente vengono descritti i mapping dei tipi di dati DB2 ai tipi di dati ADO.NET Provider for DB2 (MsDb2Client) (MsDb2Type).
| MsDb2Type | Tipo di dati DB2 | Descrizione |
|---|---|---|
| BigInt | Bigint | Un numero intero grande è un intero binario a 8 byte. |
| Binario | Binario | Un file binario è una stringa binaria a lunghezza fissa. |
| Pezzo | Smallint | Un numero intero piccolo è un intero binario a due byte. |
| BLOB | BLOB | Un oggetto binario di grandi dimensioni è una stringa di lunghezza variabile usata per archiviare dati non testuali o binari. |
| Char | Char | Un carattere è una stringa SBCS o MBCS a lunghezza fissa. |
| CLOB | CLOB | Un oggetto grande carattere di lunghezza variabile è una stringa di lunghezza variabile. La lunghezza massima della stringa dipende dalla piattaforma e dalla versione DB2. |
| Date | Date | Una data è una stringa a 10 byte. |
| DBCLOB | DCLOB | Un oggetto grande carattere a byte doppio di lunghezza variabile è una stringa a byte doppio a lunghezza variabile. La lunghezza massima della stringa dipende dalla piattaforma e dalla versione DB2. |
| Decimale | Decimale | Un decimale è un numero decimale compresso. |
| Double | Double | Un valore double è un numero a virgola mobile a precisione doppia a 8 byte. |
| Grafico | Grafico | Un elemento grafico è una stringa solo DBCS a lunghezza fissa. |
| Intero | Integer | Un numero intero è un intero binario a 4 byte. |
| Numerico | Numerico | Un valore numerico è un numero decimale compresso. |
| Reale | Reale | Un vero è un numero a virgola mobile a precisione singola a 4 byte. |
| SmallInt | Smallint | Un numero intero piccolo è un intero binario a due byte. |
| Tempo | Tempo | Un'ora è una stringa temporale a 8 byte. |
| Marca temporale: | Marca temporale: | Un timestamp è una stringa a 26 byte che rappresenta la data, l'ora e i microsecondi. |
| TinyInt | Smallint | Un numero intero piccolo è un intero binario a due byte. |
| VarBinary | Varbinary | Un file binario variabile è una stringa binaria di lunghezza variabile. |
| VarChar (campo di testo a lunghezza variabile) | Varchar | Un carattere variabile è una stringa di caratteri SBCS o MBCS di lunghezza variabile. |
| VarGraphic | Vargraphic | Un elemento grafico variabile è una stringa dbCS di lunghezza variabile. |
| VarWideChar | Vargraphic | Un elemento grafico variabile è una stringa Unicode a lunghezza variabile. |
| VarWideGraphic | Vargraphic | Un elemento grafico variabile è una stringa Unicode a lunghezza variabile. |
| WideChar | Grafico | Un elemento grafico è una stringa Unicode a lunghezza fissa. |
| XML | XML | Stringa di documento XML ben formata. |
Mapping dei tipi di dati da DB2 a OLE DB
Nella tabella seguente vengono descritti i mapping dei tipi di dati DB2 ai tipi di dati OLE DB.
| Tipo di dati OLE DB | Tipo di dati DB2 | Descrizione |
|---|---|---|
| DBTYPE_I8 | Bigint | Un numero intero grande è un 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 a lunghezza fissa. |
| DBTYPE_WSTR | Char | Un carattere Unicode è una stringa MBCS a lunghezza fissa. |
| DBTYPE_STR | CLOB | Un oggetto grande carattere di lunghezza variabile è una stringa di lunghezza variabile. La lunghezza massima della stringa dipende dalla piattaforma e dalla versione DB2. |
| DBTYPE_DBDate | Date | Una data è una stringa a 10 byte. |
| Dbtype_decimal | Decimale | Un decimale è un numero decimale compresso. |
| DBTYPE_R8 | Double | Un valore double è un numero a virgola mobile a precisione doppia a 8 byte. |
| DBTYPE_R8 | Galleggiare | Un float è un numero a virgola mobile a precisione doppia a 8 byte. |
| DBTYPE_WSTR | Grafico | Un elemento grafico è una stringa solo DBCS a lunghezza fissa. |
| DBTYPE_I4 | Integer | Un numero intero è un intero binario a 4 byte. |
| DBTYPE_STR | Long Varchar | Un carattere variabile è una stringa di caratteri SBCS o MBCS di lunghezza variabile. |
| DBTYPE_WSTR | Long Varchar | Stringa Unicode di lunghezza variabile. |
| DBTYPE_WSTR | Long Vargraphic | Un elemento grafico variabile è una stringa dbCS di lunghezza variabile. |
| DBTYPE_Numeric | Numerico | Un valore numerico è un numero decimale compresso. |
| DBTYPE_I2 | Smallint | Un numero intero piccolo è un intero binario a due byte. |
| DBTYPE_R4 | Reale | Un vero è un numero a virgola mobile a precisione singola a 4 byte. |
| DBTYPE_DBTime | Tempo | Un'ora è una stringa temporale a 8 byte. |
| DBTYPE_DBTimestamp | Marca temporale: | Un timestamp è una stringa a 26 byte che rappresenta la data, l'ora e i microsecondi. |
| DBTYPE_Bytes | Varbinary | Un file binario variabile è una stringa binaria di lunghezza variabile. |
| DBTYPE_STR | Varchar | Un carattere variabile è una stringa di caratteri SBCS o MBCS di lunghezza variabile. |
| DBTYPE_WSTR | Varchar | Stringa Unicode di lunghezza variabile. |
| DBTYPE_WSTR | VarGraphic | Un elemento grafico variabile è una stringa dbCS di lunghezza variabile. |
Le informazioni sullo schema in OLE DB vengono recuperate usando set di righe dello schema predefiniti con IDBSchemaRowset::GetRowset. Il provider di dati ha esposto il set di righe PROVIDER_TYPES per indicare il supporto del tipo di dati DB2 a OLE DB (tipi, mapping, limiti), in base alla piattaforma e alla versione 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 | DATA_TYPE OLE DB | Column_size | Minimum_scale | Maximum_scale |
|---|---|---|---|---|
| Smallint | DBType_12 | 5 | ||
| Integer | DBType_14 | 10 | ||
| Bigint | DBType_18 | 19 | ||
| Binario | DBType_Bytes | 255 | ||
| Reale | DBType_R4 | 21 | ||
| Galleggiare | DBType_R8 | 53 | ||
| Double | DBType_R8 | 53 | ||
| Decimale | Dbtype_decimal | 31 | 0 | 31 |
| Grafico | DBType_WSTR | 127 | ||
| VarGraphic | DBType_WSTR | 16352 | ||
| Char | DBType_STR | 255 | ||
| Varchar | DBType_STR | 32672 | ||
| Char | DBType_WSTR | 255 | ||
| Varchar | DBType_WSTR | 32672 | ||
| Numerico | DBType_Numeric | 31 | 0 | 31 |
| Date | DBType_DBDate | 10 | ||
| Tempo | DBType_DBTime | 8 | ||
| Marca temporale: | 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 IBM i
Il provider di dati supporta l'accesso a questi tipi di dati quando si è connessi a DB2 per IBM i.
| DB2 Type_name | DATA_TYPE OLE DB | Column_size | Minimum_scale | Maximum_scale |
|---|---|---|---|---|
| Binario | DBType_Bytes | 32765 | ||
| Smallint | DBType_12 | 5 | ||
| Integer | DBType_14 | 10 | ||
| Bigint | DBType_18 | 19 | ||
| Reale | DBType_R4 | 24 | ||
| Galleggiare | DBType_R8 | 53 | ||
| Double | DBType_R8 | 53 | ||
| Decimale | Dbtype_decimal | 63 | 0 | 31 |
| Grafico | DBType_WSTR | 16382 | ||
| VarGraphic | DBType_WSTR | 16369 | ||
| Char | DBType_STR | 32765 | ||
| Varchar | DBType_STR | 32739 | ||
| Char | DBType_WSTR | 32765 | ||
| Varchar | DBType_WSTR | 32739 | ||
| Numerico | DBType_Numeric | 31 | 0 | 31 |
| Date | DBType_DBDate | 10 | ||
| Tempo | DBType_DBTime | 8 | ||
| Marca temporale: | 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 | DATA_TYPE OLE DB | Column_size | Minimum_scale | Maximum_scale |
|---|---|---|---|---|
| Binario | DBType_Bytes | 254 | ||
| Smallint | DBType_12 | 5 | ||
| Integer | DBType_14 | 10 | ||
| Bigint | DBType_18 | 19 | ||
| Reale | DBType_R4 | 24 | ||
| Galleggiare | DBType_R8 | 53 | ||
| Double | DBType_R8 | 53 | ||
| Decimale | Dbtype_decimal | 31 | 0 | 31 |
| Grafico | DBType_WSTR | 127 | ||
| VarGraphic | DBType_WSTR | 16336 | ||
| Char | DBType_STR | 254 | ||
| Varchar | DBType_STR | 4000 | ||
| Char | DBType_WSTR | 254 | ||
| Varchar | DBType_WSTR | 4000 | ||
| Char() per i dati BIT | DBType_Bytes | 254 | ||
| Varchar() per i dati BIT | DBType_Bytes | 32672 | ||
| Numerico | DBType_Numeric | 31 | 0 | 31 |
| Date | DBType_DBDate | 10 | ||
| Tempo | DBType_DBTime | 8 | ||
| Marca temporale: | 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 usano le procedure guidate importazione/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 in C:\Programmi\Microsoft SQL Server\130\DTSMappingFiles per 64 bit e C:\Programmi (x86)\Microsoft SQL Server\130\DTSMappingFiles per 32 bit.
Servizi di replica di SQL Server
La replica di SQL Server può convertire i dati in modo non corretto, in base ai mapping predefiniti da SQL Server a tipi di dati DB2. È consigliabile esaminare l'amministratore e lo sviluppatore e rivedere i mapping dei tipi di dati di replica usando le stored procedure di sistema di SQL Server seguenti.
·sp_helpdatatypemap
·sp_getdefaultdatatypemapping
·sp_setdefaultdatatypemapping
Per altre informazioni, vedere Stored procedure di sistema (Transact-SQL).