很多数据库支持在一个命令执行中组合、批处理多个命令执行。对于ADO.NET连接数据库你使用分号分隔命令。把多个命令组合成为一个减少了对服务器的访问次数,可以提高应用程序的性能。
SQL Server数据库具有输出XML数据的能力。SQL Server .NET Data Provider支持以XML形式表示的查询结果。下面介绍其他数据库表示为XML形式的方法。由于XML与DataSet类紧密集成,因此可以通过ADO.NET连接数据库并将操作结果生成DataSet数据集。有了DataSet数据集就可以将其数据输出为Xml Schema或XML文件的形式。
输出方法有二种,一种是使用DataSet对象的GetXmlSchema方法输出Xml Schema,使用GetXml方法输出XML数据,GetXmlSchema、GetXml方法都返回一个字符串;另一种输出方法是调用DataSet对象中的WriteXml方法和WriteXmlSchema方法。#t#
WriteXml方法输出XML数据,WriteXmlSchema方法输出Xml Schema。这二个成员方法分别和ReadXml、ReadXmlSchema方法对应,也有多个重载版本,可以将数据和数据模式写到流对象、磁盘文件等。例如:
- OleDbConnection myConn=new OleDbConnection
- (″Provider=Microsoft.Jet.OLEDB.4.0;
- Data Source=..\..\txl.mdb″);
- OleDbDataAdapter myCommand=new OleDbDataAdapter
- (″select *from b1″,myConn);
- DataSet ds=new DataSet();
- myCommand.Fill(ds,″b1″);
如果拥有包含数据的DataSet对象而希望以XML层次模型的方式访问DataSet中的数据,则可以将该DataSet对象作为参数传递给XmlDataDocument对象的构造函数。XmlDataDocument中的数据是对DataSet对象中数据的引用,而不是拷贝,这样创建出来的ADO.NET连接数据库将和DataSet对象同步。因此对这二个对象中任一对象数据的修改,将会实时地反映到另一对象中。创建过程如下:
- OleDbConnection myConn=new OleDbConnection
- (″Provider=Microsoft.Jet.OLEDB.4.0;
- Data Source=..\..\txl.mdb″);
- OleDbDataAdapter myCommand=new OleDbDataAdapter
- (″select *from b1″,myConn);
- DataSet ds=new DataSet();
- myCommand.Fill(ds,″b1″);
- XmlDataDocument doc=new XmlDataDocument(ds);
XML和关系型数据表是二种有效的数据视图。.NET Framework提供了XmlDocument用来实现DOM编程接口,从而使用户可以从XML层次视图的角度处理数据。.ADO.NET连接数据库还提供了DataSet来表示关系数据模型,从而允许从二维表格、行、列和关系的角度来处理数据。
在不同的应用场合下,要使用不同的数据视图来处理数据。ADO.NET连接数据库对象集成了数据集对象DataSet和XML文档对象XmlDocument,利用它可以处理关系数据或XML数据,并自动维持关系数据视图和DOM视图,使其同步。