配置日期时间转换

对于特定的日期时间和字符数据类型,DRDA 服务将在处理动态和静态 SQL 语句时,将字符串文本日期时间值格式化为源格式和目标格式。 conversionFormats 元素包含用于与 DB2 和 SQL Server 日期/时间格式相互转换的 dateMasks、timeMasks 和 dateTimeMasks。

  1. 从 DB2 读取数据并写入 SQL Server 时,MsDrdaService 将读取与应用配置中指定的源 DB2 格式匹配的字符串文本值,然后将字符串文本值写入默认 SQL Server 格式。

  2. 从 SQL Server 读取数据并写入 DB2 时,MsDrdaService 将读取与已知输入格式匹配的字符串文本值,然后将字符串文本值写入应用配置中指定的 DB2 目标格式。

    <conversionFormats>  
                <dateTimeMasks>  
                </dateTimeMasks>  
    
                <timeMasks>  
                </timeMasks>  
    
                <dateMasks>  
                </dateMasks>  
              </conversionFormats>  
    
    

日期

DRDA 服务将处理 DB2 和 SQL Server DATE、CHAR(10)和 VARCHAR (10) 数据类型中的字符串文本日期值,以从 DB2 日期格式转换为 SQL Server 日期格式,以及从 SQL Server 日期格式转换为 DB2 日期格式。 dateMasks 包含一个或多个 dateMask 元素,以定义日期映射。 dateMask 元素包含用于指示方向的 db2ToSqlsqlToDb2,以及用于指定映射的 sourceFormattargetFormatdb2ToSql 定义从 DB2 到 SQL Server 的方向。 sqlToDb2 定义从 SQL Server 到 DB2 的方向。

DB2 日期转换为 SQL Server 日期

从 DB2 读取数据并写入 SQL Server 时,MsDrdaService 将读取与应用配置中指定的输入 DB2 日期源格式匹配的字符串文本 DB2 日期值,然后将字符串文本 SQL Server 日期值写入默认 SQL Server 日期格式。

<dateMask>  
                <db2ToSql sourceFormat="YmdHyphen"/>  
              </dateMask>  

DRDA 服务将处理字符串以匹配输入 DB2 日期源格式 YYYY-MM-DD。

sourceFormat 属性定义 DRDA 服务应标识为输入字符串文本日期值的源字符串的格式。 此 可选 属性接受 枚举 值。 默认值为 YmdHyphen

格式名称 格式掩码 DESCRIPTION
ISO yyyy-mm-dd ISO 日期格式分隔符
美国 mm/dd/yyyyy 美国日期格式分隔符
欧元 dd.mm.yyyyy EUR 日期格式分隔符
JIS yyyy-mm-dd JIS 日期格式分隔符
DmyBlank 日 月 年 带空白分隔符的日月年
DmyComma dd,mm,y 带逗号分隔符的日月年
DmyHyphen dd-mm-yy 带连字符分隔符的日月年
DmyPeriod dd.mm.yy 包含时间段分隔符的日月年
DmySlash dd/mm/y 使用斜杠分隔的日/月/年格式
JulBlank yy ddd 带空白分隔符的 Julian
JulComma yy,ddd 带逗号分隔符的 Julian
JulHyphen yy-ddd Julian 用连字符分隔
JulPeriod yy.ddd 朱利安日历中的周期分隔符
JulSlash yy/ddd 带斜杠分隔符的朱利安
MdyBlank mm dd yy 用空格分隔的年月日
MdyComma mm,dd,y 带逗号分隔符的月日年数
MdyHyphen mm-dd-yy 月、日、年以短横线分隔
MdyPeriod mm.dd.yy 带周期分隔符的月日年
MdySlash mm/dd/y 以斜杠分隔的“月/日/年”格式
YmdBlank yy mm dd 包含空白分隔符的年月日
YmdComma yy,mm,dd 带逗号分隔符的年月日
YmdHyphen yy-mm-dd 以连字符分隔的年月日
YmdPeriod yy.mm.dd 包含时间段分隔符的年月日
YmdSlash yy/mm/dd 以斜杠分隔的年/月/日

支持用于 db2ToSql dateMask 转换的 sourceFormat 属性值。

SQL Server 日期转换到 DB2 DATE

从 SQL Server 读取数据并写入 DB2 时,MsDrdaService 将读取与已知输入 SQL Server 日期格式匹配的字符串文本日期值,然后将字符串文本日期值写入应用配置中指定的 DB2 日期目标格式。

<dateMask>  
                <sqlToDb2 targetFormat="YmdHyphen"/>  
              </dateMask>  
  

DRDA 服务将处理字符串以匹配 DB2 日期目标格式 YYYY-MM-DD。

targetFormat 属性定义 DRDA 服务应作为输出字符串文本日期值生成的目标字符串的格式。 此 可选 属性接受 枚举 值。 默认值为 YmdHyphen

格式名称 格式掩码 DESCRIPTION
ISO yyyy-mm-dd ISO 日期格式分隔符
美国 mm/dd/yyyyy 美国日期格式分隔符
欧元 dd.mm.yyyyy EUR 日期格式分隔符
JIS yyyy-mm-dd JIS 日期格式分隔符
DmyBlank 日 月 年 带空白分隔符的日月年
DmyComma dd,mm,y 带逗号分隔符的日月年
DmyHyphen dd-mm-yy 带连字符分隔符的日月年
DmyPeriod dd.mm.yy 包含时间段分隔符的日月年
DmySlash dd/mm/y 使用斜杠分隔的日/月/年格式
JulBlank yy ddd 带空白分隔符的 Julian
JulComma yy,ddd 带逗号分隔符的 Julian
JulHyphen yy-ddd Julian 用连字符分隔
JulPeriod yy.ddd 朱利安日历中的周期分隔符
JulSlash yy/ddd 带斜杠分隔符的朱利安
MdyBlank mm dd yy 用空格分隔的年月日
MdyComma mm,dd,y 带逗号分隔符的月日年数
MdyHyphen mm-dd-yy 月、日、年以短横线分隔
MdyPeriod mm.dd.yy 带周期分隔符的月日年
MdySlash mm/dd/y 以斜杠分隔的“月/日/年”格式
YmdBlank yy mm dd 包含空白分隔符的年月日
YmdComma yy,mm,dd 带逗号分隔符的年月日
YmdHyphen yy-mm-dd 以连字符分隔的年月日
YmdPeriod yy.mm.dd 包含时间段分隔符的年月日
YmdSlash yy/mm/dd 以斜杠分隔的年/月/日

支持用于 sqlToDb2 dateMask 转换的 targetFormat 属性值。

时间

DRDA 服务将处理 DB2 和 SQL Server TIME、CHAR(8)和 VARCHAR (8) 数据类型中的字符串文本时间值,以便从 DB2 时间格式转换为 SQL Server 时间格式,以及从 SQL Server 时间格式转换为 DB2 时间格式。 timeMask 包含一个或多个 timeMask 元素,用于定义时间映射。 timeMask 元素包含用于指示方向的 db2ToSqlsqlToDb2,以及用于指定映射的 sourceFormattargetFormatdb2ToSql 定义从 DB2 到 SQL Server 的方向。 sqlToDb2 定义从 SQL Server 到 DB2 的方向。

将 DB2 时间转换为 SQL Server 时间

从 DB2 读取数据并写入 SQL Server 时,MsDrdaService 将读取与应用配置中指定的输入 DB2 时间源格式匹配的字符串文本 DB2 时间值,然后将字符串文本 SQL Server 时间值写入默认 SQL Server 时间格式。

<timeMask>  
                <db2ToSql sourceFormat="HmsColon"/>  
              </timeMask>  

DRDA 服务将处理字符串以匹配输入 DB2 时间源格式 HH:MM:SS。

sourceFormat 属性定义 DRDA 服务应标识为输入字符串文本时间值的源字符串的格式。 此 可选 属性接受 枚举 值。 默认值为 HmsColon

格式名称 格式掩码 DESCRIPTION
HmsBlank hh mm ss 带空白分隔符的小时分钟秒
HmsColon hh:mm:ss 带冒号分隔符的小时分钟秒
HmsComma hh,mm,ss 小时、分钟、秒,带逗号分隔符
HmsPeriod hh.mm.ss 带句点分隔符的小时分钟秒

支持的 sourceFormat 属性值,用于 db2ToSql timeMask 转换。

SQL Server 时间转换为 DB2 TIME格式

从 SQL Server 读取数据并写入 DB2 时,MsDrdaService 将读取与已知输入 SQL Server 时间格式匹配的字符串文本时间值,然后将字符串文本时间值写入应用配置中指定的 DB2 时间目标格式。

<timeMask>  
                <sqlToDb2 targetFormat="HmsColon"/>  
              </timeMask>  
  

DRDA 服务将处理字符串以匹配 DB2 时间目标格式 HH:MM:SS。

targetFormat 属性定义 DRDA 服务应作为输出字符串文本时间值生成的目标字符串的格式。 此 可选 属性接受 枚举 值。 默认值为 HmsColon

格式名称 格式掩码 DESCRIPTION
HmsBlank hh mm ss 带空白分隔符的小时分钟秒
HmsColon hh:mm:ss 带冒号分隔符的小时分钟秒
HmsComma hh,mm,ss 小时、分钟、秒,带逗号分隔符
HmsPeriod hh.mm.ss 带句点分隔符的小时分钟秒

支持用于 sqlToDb2 timeMask 转换的 targetFormat 属性值。

时间戳

DRDA 服务将处理 DB2 和 SQL Server TIMESTAMP 中的字符串文本时间戳值,DATETIME2 (6)、CHAR (26) 和 VARCHAR (26) 数据类型,以从 DB2 时间戳格式转换为 SQL Server datetime2 (6) 格式,以及从 SQL Server datetime2 (6) 格式转换为 DB2 时间戳格式。 dateTimeMasks 包含一个或多个 dateTimeMask 元素,用于定义 timestamp-datetime 映射。 dateTimeMask 元素包含用于指示方向的 db2ToSqlsqlToDb2,以及用于指定映射的 sourceFormattargetFormatdb2ToSql 定义从 DB2 到 SQL Server 的方向。 sqlToDb2 定义从 SQL Server 到 DB2 的方向。

DB2 TIMESTAMP 到 SQL Server datetime2

从 DB2 读取数据并写入 SQL Server 时,MsDrdaService 将读取字符串文本 DB2 时间戳值,这些值与应用配置中指定的输入 DB2 时间戳源格式匹配,然后将字符串文本 SQL Server datetime2 (6) 值写入默认 SQL Server datetime2 (6) 格式。

<dateTimeMask>  
                <db2ToSql sourceFormat="Db2TimestampFormat"/>  
              </dateTimeMask>  

DRDA 服务将处理字符串以匹配输入 DB2 时间戳源格式 YYYY-MM-DD hh:mm:ss.nnnnnn。

sourceFormat 属性定义 DRDA 服务应标识为输入字符串文本时间戳值的源字符串的格式。 此 可选 属性接受 枚举 值。 默认值为 Db2TimestampFormat

格式名称 格式掩码
Db2时间戳格式 YYYY-MM-DD-hh:mm:ss.tttttt
ISO时间戳格式 YYYY-MM-DD.hh.mm.ss.tttttt
SqlServerTimestampFormat(SQL服务器时间戳格式) YYYY-MM-DD hh:mm:ss.tttttt
AnyTimeStampFormat YYYY?MM?DD?hh?mm?ss?tttttt

支持的 sourceFormat 属性值,用于 db2ToSql dateTimeMask 转换。

SQL Server datetime2 到 DB2 TIMESTAMP

从 SQL Server 读取数据并写入 DB2 时,MsDrdaService 将读取与已知输入 SQL Server datetime2 (6) 格式匹配的字符串文本时间戳值,然后将字符串文本日期值写入应用配置中指定的 DB2 时间戳目标格式。

<dateTimeMask>  
                <sqlToDb2 targetFormat="Db2TimestampFormat"/>  
              </dateTimeMask>  

DRDA 服务将处理字符串以匹配 DB2 时间戳目标格式 YYYY-MM-DD hh:mm: ss.nnnnnn。

targetFormat 属性定义 DRDA 服务应作为输出字符串文本时间戳值生成的目标字符串的格式。 此 可选 属性接受 枚举 值。 默认值为 Db2TimestampFormat

格式名称 格式掩码
Db2TimestampFormat YYYY-MM-DD-hh:mm:ss.tttttt
ISO时间戳格式 YYYY-MM-DD.hh.mm.ss.tttttt
SqlServerTimestampFormat YYYY-MM-DD hh:mm:ss.tttttt

支持用于 sqlToDb2 dateTimeMask 转换的 targetFormat 属性值。