• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Microsoft SQL Server 2005 中的 XML 支_sqlserver

sqlserver 搞代码 3年前 (2018-06-17) 109次浏览 已收录 0个评论

  四、SQL Server 2005 中的客户端 xml 处理

XML 数据类型的客户端支持.NET 框架 V2.0 中的 ADO.NET XML 支持

  在 SqlDataReader.GetSqlXml() 方法的 System.Data.SqlTypes 命名空间中,XML 数据类型是作为类 SqlXml 公开的。可以使用 SqlXml.CreateReader() 函数从 SqlXml 对象获得 XmlReader。

  类型化 XML 列的 XML 架构集合的名称由三部分组成,可以从 XML 列的元数据中获得(通过使用 SqlDataReader 对象中的 GetSchemaTable() 或 GetSqlMetaData (int)),其三个部分作为三个属性,分别表示数据库 (XmlSchemaCollectionDatabase)、关系架构 (XmlSchemaCollectionOwingSchema) 和 XML 架构集合 (XmlSchemaCollectionName) 的名称。

  客户端可以使用新的架构行集 XMLSCHEMA 从服务器检索 XML 架构。XMLSCHEMA 行集包含 XML 架构集合、目标命名空间和 XML 架构内容本身这样三列。

  下面的示例显示了用于对 XML 数据类型进行托管访问的主干代码。

  例:对 XML 数据类型进行进程内访问

  下面的 c# 代码演示了如何从进程内提供程序访问 XML 数据类型。用于 SQL 客户端访问的代码需要适当地改变进程内访问。

using System;
using System.Xml;
using System.Data;
using System.Data.SqlTypes;
using System.Data.sqlserver;
class xmldtADONETReadaccessInProc
{
  static void ReadXmlDataType () {
   // in-proc connection to server
   SqlConnection conn = SqlContext.GetConnection();
   // prepare query to select xml data
   SqlCommand cmd = conn.CreateCommand();
   cmd.CommandText = "SELECT xCol FROM docs";
   // execute query and retrieve incoming data
   SqlDataReader r = cmd.ExecuteReader();
   r.Read();
   // access XML data type field in rowset
   SqlXml xml = r.GetSqlXml(0);
   new XmlTextWriter(Console.Out).WriteNode(
xml.CreateReader(), true);
  }
}

  例:使用 SQL 客户端提供程序更新 XML 数据类型列

欢迎大家阅读《Microsoft SQL Server 2005 中的 XML 支_sqlserver,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址