創(chuàng)建ADO.NET連接數(shù)據(jù)庫使用相關(guān)介紹
很多數(shù)據(jù)庫支持在一個命令執(zhí)行中組合、批處理多個命令執(zhí)行。對于ADO.NET連接數(shù)據(jù)庫你使用分號分隔命令。把多個命令組合成為一個減少了對服務(wù)器的訪問次數(shù),可以提高應(yīng)用程序的性能。
SQL Server數(shù)據(jù)庫具有輸出XML數(shù)據(jù)的能力。SQL Server .NET Data Provider支持以XML形式表示的查詢結(jié)果。下面介紹其他數(shù)據(jù)庫表示為XML形式的方法。由于XML與DataSet類緊密集成,因此可以通過ADO.NET連接數(shù)據(jù)庫并將操作結(jié)果生成DataSet數(shù)據(jù)集。有了DataSet數(shù)據(jù)集就可以將其數(shù)據(jù)輸出為Xml Schema或XML文件的形式。
輸出方法有二種,一種是使用DataSet對象的GetXmlSchema方法輸出Xml Schema,使用GetXml方法輸出XML數(shù)據(jù),GetXmlSchema、GetXml方法都返回一個字符串;另一種輸出方法是調(diào)用DataSet對象中的WriteXml方法和WriteXmlSchema方法。#t#
WriteXml方法輸出XML數(shù)據(jù),WriteXmlSchema方法輸出Xml Schema。這二個成員方法分別和ReadXml、ReadXmlSchema方法對應(yīng),也有多個重載版本,可以將數(shù)據(jù)和數(shù)據(jù)模式寫到流對象、磁盤文件等。例如:
- 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″);
如果擁有包含數(shù)據(jù)的DataSet對象而希望以XML層次模型的方式訪問DataSet中的數(shù)據(jù),則可以將該DataSet對象作為參數(shù)傳遞給XmlDataDocument對象的構(gòu)造函數(shù)。XmlDataDocument中的數(shù)據(jù)是對DataSet對象中數(shù)據(jù)的引用,而不是拷貝,這樣創(chuàng)建出來的ADO.NET連接數(shù)據(jù)庫將和DataSet對象同步。因此對這二個對象中任一對象數(shù)據(jù)的修改,將會實(shí)時地反映到另一對象中。創(chuàng)建過程如下:
- 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和關(guān)系型數(shù)據(jù)表是二種有效的數(shù)據(jù)視圖。.NET Framework提供了XmlDocument用來實(shí)現(xiàn)DOM編程接口,從而使用戶可以從XML層次視圖的角度處理數(shù)據(jù)。.ADO.NET連接數(shù)據(jù)庫還提供了DataSet來表示關(guān)系數(shù)據(jù)模型,從而允許從二維表格、行、列和關(guān)系的角度來處理數(shù)據(jù)。
在不同的應(yīng)用場合下,要使用不同的數(shù)據(jù)視圖來處理數(shù)據(jù)。ADO.NET連接數(shù)據(jù)庫對象集成了數(shù)據(jù)集對象DataSet和XML文檔對象XmlDocument,利用它可以處理關(guān)系數(shù)據(jù)或XML數(shù)據(jù),并自動維持關(guān)系數(shù)據(jù)視圖和DOM視圖,使其同步。