timestamp 数据类型的 FOR XML 支持

在 FOR XML 转换中,timestamp 类型值被视为 varbinary(8) 数据,并且始终为 Base 64 编码。XSD 架构或 XDR 架构反映此类型(如果请求)。

drop table t
go
create table t
(c1 int,
 c2 timestamp)
go

insert t values(1, null)
go
select * from t
for xml auto, xmldata
go

结果如下:

  <Schema name="Schema1" 
          xmlns="urn:schemas-microsoft-com:xml-data" 
          xmlns:dt="urn:schemas-microsoft-com:datatypes">
    <ElementType name="t" content="empty" model="closed">
      <AttributeType name="c1" dt:type="i4" />
      <AttributeType name="c2" dt:type="bin.base64" />
      <attribute type="c1" />
      <attribute type="c2" />
    </ElementType>
  </Schema>
  <t xmlns="x-schema:#Schema1" c1="1" c2="AAAAAAAAH04=" />