使用ExecuteXMLReader()方法执行的SQL SELECT语句返回XML数据。ExecuteXMLReader用XmlReader对象返回结果,然后可以用此对象读取获取XML数据,此方法只适用于SqlCommand类。SQL Server扩展标准SQL,可以用XML格式查询数据库并取得结果。在SQL SELECT语句末尾添加FOR XML从句,语法如下:
FOR XML {
   RAW | AUTO | EXPLICIT  }
 [,XMLDATA]
 [,ELEMENTS]
 [,BINARY BASE64]
下表显示了FOR XML从句中使用的关键字的具体描述

下面代码使用FOR XML AUTO从句从VERIFY(用户口令验证)表中用XML格式返回5行

SqlCommand comm=new SqlCommand(“SELECT TOP 5 id,password,name,level,station,dept FROM verify FOR XML AUTO”,con);

con.Open();//在调用方法前打开数据库连接,可以减少数据库连接所花的时间,节省数据库资源。
XmlReader xr=comm.ExecuteXmlReader ();//要引用XmlReader对象必须先程序开头引用System.Xml命名空间
xr.Read();//从XmlReader对象中读取XML
while (!xr.EOF)//如果不是文件尾,则在页面上输出XML
 {
  Response.Write(Server.HtmlEncode(xr.ReadOuterXml()+“<br>”));
  }
 
xr.Close();//关闭XmlReader对象
con.Close();//在读取数据结束后才能关闭数据库,因为SqlDataReader对象的数据源必须保持数据库连接。