可以通过编辑数据类型映射文件来使用 SQL Server Integration Services 导入和导出向导自定义默认数据转换。 映射文件定义数据源和目标之间的数据类型映射,并采用 XML 格式定义。 编辑 XML 文件时,可确保源和目标之间的兼容性。
XML 文件位于 Microsoft SQL Server 安装的 MappingFiles 文件夹中。
数据类型映射
若要正确将 IBM DB2 for IBM i 字符和十进制数据类型映射到 SQL Server 数据类型,应扩展数据映射文件以包含 DB2 数据类型长格式同义词。 例如,使用 Microsoft OLE DB Provider for DB2 (数据提供程序),请在 DB2 INTEGER 源和 SQL Server 之间添加以下数据类型映射。 此映射与 SQLOLEDB 和 System.Data.SqlClient.SqlConnection
兼容。 它将短格式 SourceDataType 值 INT 替换为长格式 INTEGER。
以下 DB2 INT 映射与 DB2 for z/OS 源相兼容。
<!-- INT -->
<dtm:DataTypeMapping>
<dtm:SourceDataType>
<dtm:DataTypeName>INT</dtm:DataTypeName>
</dtm:SourceDataType>
<dtm:DestinationDataType>
<dtm:SimpleType>
<dtm:DataTypeName>INT</dtm:DataTypeName>
</dtm:SimpleType>
</dtm:DestinationDataType>
</dtm:DataTypeMapping>
DB2 INTEGER 的以下数据类型映射与适用于 IBM i 源的 DB2 兼容。
<!-- INTEGER -->
<dtm:DataTypeMapping>
<dtm:SourceDataType>
<dtm:DataTypeName>INTEGER</dtm:DataTypeName>
</dtm:SourceDataType>
<dtm:DestinationDataType>
<dtm:SimpleType>
<dtm:DataTypeName>INT</dtm:DataTypeName>
</dtm:SimpleType>
</dtm:DestinationDataType>
</dtm:DataTypeMapping>
映射文件
下表描述了在使用数据提供程序时可以编辑的三个映射文件。
DB2 数据类型名称 | DB2ToMSSql | DB2ToMSSql10 | DB2ToSSIS10 |
---|---|---|---|
时间 | 日期时间 | 时间 | DT_DBTIME |
时间戳 | 日期时间 | datetime2 | DT_DBTIMESTAMP2 |
日期 | 日期时间 | 日期 | DT_DBDATE |
煳 | 炭化 | 炭 | DT_STR |
CHAR()用于位数据 | 二进制 | 二进制 | DT_BYTES |
CHAR () 用于混合数据 | NCHAR | NCHAR | DT_WSTR |
CHAR () 用于 SBCS 数据 | 煳 | 煳 | DT_STR |
字符 | 炭化 | 煳 | DT_STR |
字符 () 对于位数据 | 二进制 | 二进制 | DT_BYTES |
字符 () 用于混合数据 | NCHAR | NCHAR | DT_WSTR |
字符 () 用于 SBCS 数据 | 煳 | 焦炭 | DT_STR |
民族性 | NCHAR | NCHAR | DT_WSTR |
VARCHAR | VARCHAR | VARCHAR | DT_STR |
VARCHAR () 用于 BIT 数据 | VARBINARY | VARBINARY | DT_BYTES |
VARCHAR () 用于混合数据 | NVARCHAR | NVARCHAR | DT_WSTR |
VARCHAR () 用于 SBCS 数据 | VARCHAR | VARCHAR | DT_STR |
字符可变长度 | VARCHAR | VARCHAR | DT_STR |
字符变化 () 对于位数据 | VARBINARY | VARBINARY | DT_BYTES |
可变字符()用于混合数据 | NVARCHAR | NVARCHAR | DT_WSTR |
可变字符()用于 SBCS 数据 | VARCHAR | VARCHAR | DT_STR |
国家字符可变 | NVARCHAR | NVARCHAR | DT_WSTR |
用于位数据的 LONG VARCHAR | 图像 | 图像 | DT_IMAGE |
LONG VARCHAR | 文本 | 文本 | DT_TEXT |
图形 | NCHAR | NCHAR | DT_WSTR |
VARGRAPHIC | NVARCHAR | NVARCHAR | DT_WSTR |
图形变化 | NVARCHAR | NVARCHAR | DT_WSTR |
SMALLINT | SMALLINT | SMALLINT | DT_I2 |
INT | INT | INT | DT_I4 |
整数 | INT | INT | DT_I4 |
BIGINT | BIGINT | BIGINT | DT_I8 |
十进制 | 数值的 | 数值的 | DT_NUMERIC |
数值的 | 数值的 | 数值的 | DT_NUMERIC |
真正 | 真正 | 真正 | DT_R4 |
漂浮 | 漂浮 | 漂浮 | DT_R8 |
双 | 漂浮 | 漂浮 | DT_R8 |
双精度 | 漂浮 | 漂浮 | DT_R8 |
BLOB | 图像 | 图像 | DT_BYTES |
二进制大对象 | 图像 | 图像 | DT_BYTES |
CLOB | 文本 | 文本 | DT_TEXT |
CLOB () 用于混合数据 | ntext | ntext | DT_NTEXT |
CLOB () 用于 SBCS 数据 | 文本 | 文本 | DT_TEXT |
字符大型对象 | 文本 | 文本 | DT_TEXT |
大型字符对象用于混合数据 | ntext | ntext | DT_NTEXT |
CHAR 大对象用于 SBCS 数据 | 文本 | 文本 | DT_TEXT |
字符大型对象 | 文本 | 文本 | DT_TEXT |
用于混合数据的字符大型对象 () | ntext | ntext | DT_NTEXT |
SBCS 数据的字符大型对象 () | 文本 | 文本 | DT_TEXT |
130 | ntext | ntext | DT_NTEXT |
有关配置 SQL Server 2022 Integration Services 的详细信息,请参阅 “数据流 ”部分。
自定义数据流组件
可以使用 SQL Server Integration Services 数据流组件来执行默认和自定义转换。 自定义转换基于开发人员提供的自定义代码。
SQL Server Integration Services 的 XML 格式映射文件是用于导入导出向导的。 这些文件不用于数据流。 SQL Server Integration Services 提供管道缓冲区类,使企业开发人员能够在数据流中自定义数据映射。
有关使用 SQL Server 2022 Integration Services 自定义数据流组件的详细信息,请参阅 “数据流 ”部分。