主机文件数据
平台兼容性
代码页转换
数据访问接口支持单字节字符集 (SBCS)、混合字节字符集 (MBCS)、双字节字符集 (DBCS) 以及 Unicode - UTF8 [1208](这是 8 位 Unicode 转换格式)的组合。
主机 CCSID
“数据访问接口”要求具有一个主机 CCSID 的值(编码字符集标识符),从而在字符串数据上执行代码页转换。 默认主机 CCSID 值是 EBCDIC – U.S./Canada [37] 。 通常,IBM z/OS 和 IBM i 利用 EBCDIC (扩展二进制编码的十进制交换代码) 。
PC 代码页
“数据访问接口”要求具有一个 PC 代码页的值,从而在字符串数据上执行代码页转换。 默认的 PC 代码页是 ANSI – Latin I [1252] 。 通常情况下,数据使用者可以使用 ANSI(美国国家标准协会)或 Unicode。
以字符方式处理二进制数据
可选的以字符方式处理二进制数据 (CCSID 65535),指示数据提供程序根据“主机 CCSID”和“PC 代码页”在主机字节与 Windows 字符串之间相互转换。 默认值为 false。
数据类型映射
本主题介绍 MsHostFileClient 支持的所有数据类型映射。
ADO.NET 数据类型映射
下表定义了支持的数据提供程序 (MsHostFileClient.HostFileType) 到主机文件设计器 (System.Type)、IBM COBOL 和 RPG 的数据类型。
HostFileType | HostFileMetaType | 限制 | 主机文件设计器类型 | COBOL |
---|---|---|---|---|
HostFileType.BigInt | System.Int64 | Integer | PIC S9(n) COMP-4 | |
HostFileType.Char | System.String | 最大长度:32765;255 | 字符串 | PIC X(n) |
HostFileType.CharForBit | System.Byte | 最大长度:32765 | Short | PIC S9(n) COMP-4 |
HostFileType.Date | System.DateTime | 长度:10 | DateTime | 仅限 ISO 日期 YYYY-MM-DD |
HostFileType.Decimal | System.Decimal | 最大精度:28 | 小数 | PIC S9(n)V9(n) COMP-3 |
HostFileType.Double | double | Double | COMP-2 | |
HostFileType.Graphic | System.String | 最大长度:16382;127 | 字符串 | PIC G(n) |
HostFileType.Int | System.Int32 | Integer | PIC S9(n) COMP-4 | |
HostFileType.Numeric | System.Decimal | 最大精度:31 | 小数 | PIC S9(n)V9(n) COMP-3 |
HostFileType.Real | FLOAT | Single | COMP-1 | |
HostFileType.SmallInt | System.Int16 | Short | PIC S9(n) COMP-4 | |
HostFileType.Time | System.TimeSpan | 长度:8 | DateTime | 仅限 ISO 时间 HH.MM.SS |
HostFileType.Timestamp | System.DateTime | 长度:26 | DateTime | ISO 日期和时间 YYYY-MM-DD HH.MM.SS |
HostFileType.UDT | System.Object | 最大长度:32739 | Byte | 未转换的 PIC X |
HostFileType.VarChar | System.String | 最大长度:32739;4045 | 字符串 | PIC X(n) |
HostFileType.VarCharForBit | System.Byte | 最大长度:32739;4045 | Byte | 未转换的 PIC X |
HostFileType.VarGraphic | System.String | 最大长度:16369;4045 | PIC G(n) |
下表定义了支持的 ADO.NET (System.Data.DbType) 到数据提供程序 (MsHostFileClient.HostFileType)、主机文件设计器 (System.Type)、IBM COBOL 和 RPG 的数据类型。
DbType | HostFileMetaType | HostFileType | 限制 | 主机文件设计器类型 | COBOL |
---|---|---|---|---|---|
DbType.AnsiString | System.String | HostFileType.VarChar | 最大长度:32739;4045 | 字符串 | PIC X(n) |
DbType.AnsiStringFixedLength | System.String | HostFileType.Char | 最大长度:32765;255 | 字符串 | PIC X(n) |
DbType.Binary | System.Byte | HostFileType.VarCharForBit | 最大长度:32739 | Byte | 未转换的 PIC X |
DbType.Boolean | System.Boolean | HostFileType.SmallInt | 布尔 | PIC S9(4) COMP-4 | |
DbType.Byte | System.Byte | HostFileType.SmallInt | Short | PIC S9(n) COMP-4 | |
DbType.Currency | System.Decimal | HostFileType.Decimal | 最大精度:31 | 小数 | PIC S9(n)V9(n) COMP-3 |
DbType.Date | System.DateTime | HostFileType.Date | 长度:10 | DateTime | 仅限 ISO 日期 YYYY-MM-DD |
DbType.DateTime | System.DateTime | HostFileType.Timestamp | 长度:26 | DateTime | ISO 日期和时间 YYYY-MM-DD HH.MM.SS |
DbType.Decimal | System.Decimal | HostFileType.Decimal | 最大精度:31 | 小数 | PIC S9(n)V9(n) COMP-3 |
DbType.Double | Double | HostFileType.Double | Double | COMP-2 | |
DbType.Guid | System.Guid | HostFileType.VarCharForBit | 最大长度:32739 | Byte | 未转换的 PIC X |
DbType.Int16 | System.Int16 | HostFileType.SmallInt | Short | PIC S9(n) COMP-4 | |
DbType.Int32 | System.Int32 | HostFileType.Int | Integer | PIC S9(n) COMP-4 | |
DbType.Int64 | System.Int64 | HostFileType.BigInt | Integer | PIC S9(n) COMP-4 | |
DbType.Object | System.Object | HostFileType.VarCharForBit | 最大长度:32739 | Byte | 未转换的 PIC X |
DbType.SByte | SByte | HostFileType.SmallInt | Short | PIC S9(n) COMP-4 | |
DbType.Single | FLOAT | HostFileType.Real | Single | COMP-1 | |
DbType.String | System.String | HostFileType.VarChar | 最大长度:32739;4045 | 字符串 | PIC X(n) |
DbType.StringFixedLength | System.String | HostFileType.Char | 最大长度:32765;255 | 字符串 | PIC X(n) |
DbType.Time | System.TimeSpan | HostFileType.Time | 长度:8 | DateTime | 仅限 ISO 时间 HH.MM.SS |
DbType.UInt16 | System.UInt16 | HostFileType.SmallInt | Short | PIC 9(n) COMP-4 | |
DbType.UInt32 | System.UInt32 | HostFileType.Int | Integer | PIC 9(n) COMP-4 | |
DbType.UInt64 | System.UInt64 | HostFileType.BigInt | Integer | PIC 9(n) COMP-4 | |
DbType.VarNumeric | System.Decimal | HostFileType.Decimal | 小数 | PIC S9(n)V9(n) COMP-3 |
性能
本主题包含以下部分,它们可帮助你在使用主机文件的数据提供程序时实现性能最大化。
针对性能的配置
要提升性能,请使用以下方法来配置访问接口。
将访问接口资源存入池中以便缩短连接启动时间
连接池是一个客户端优化,可以缩短连接启动时间,同时降低客户端计算机上的内存使用率。 ADO.NET 提供程序和 BizTalk 适配器支持连接池。 用户可以使用 ADO.NET 连接字符串指定池 (Connection Pooling=True)。 此外,您可以使用数据源向导的“高级”对话框和数据链接的“所有”对话框来配置池。
访问接口会根据“最大池大小”属性维护连接的缓存。 默认池大小为 100 个连接数(“最大池大小=100”),您可以使用数据源向导或数据链接的“全部”对话框进行调整。 对“最大池大小”属性没有上限。 如果您对“最大池大小”属性配置的值小于 0,则使用默认值 100。
或者,您可以指定数秒钟,指示数据访问接口来等待使用客户端池建立连接。 当池中的所有连接都在使用,并且超时时间已经过期时,则数据访问接口将向数据使用者返回一个错误(“连接不可用”)。 默认值为 15 秒(“连接超时=15”),您可以使用数据源向导或数据链接的“全部”对话框进行调整。 对“连接超时值”属性没有上限。 指定 -1 可以指示数据提供程序无限期地等待客户端连接池中打开的连接。
度量性能
为了度量性能,数据提供程序提供了性能计数器。 默认情况下,性能计数器将关闭。 可通过将以下注册表项的值更改为 1,打开这些计数器:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Host Integration Server\Data Integration\UpdateCounters = 1
数据提供程序性能计数器可捕获以下相关信息:打开的连接数、打开的语句数、已发送/已接收的包和字节数、平均主机(主机服务器)处理时间、命令执行数和数据提取数。