使用ExecuteXMLReader()方法执行的SQL SELECT语句返回XML数据。ExecuteXMLReader用XmlReader对象返回结果,然后可以用此对象读取获取XML数据,此方法只适用于SqlCommand类。SQL Server扩展标准SQL,可以用XML格式查询数据库并取得结果。在SQL SELECT语句末尾添加FOR XML从句,语法如下:
FOR XML { RAW | AUTO | EXPLICIT }
FOR XML { RAW | AUTO | EXPLICIT }
[,XMLDATA]
[,ELEMENTS]
[,BINARY BASE64]
下表显示了FOR XML从句中使用的关键字的具体描述
下表显示了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对象的数据源必须保持数据库连接。
转载于:https://blog.51cto.com/chenxing/45010