C 2005 資料庫訪問(五)

2021-04-17 12:13:54 字數 1988 閱讀 6561

ado.net datasets中的xml支援

在ado.net中的xml支援主要用於dataset物件,因為xml主要關注所有的關係和分層的結構化資料。dataset具有7個方法可以用於處理xml,其中最易於使用的方法是writexml(),它將資料集的內容以xml文件的形式寫出。writexml()可以將xml寫到不同的目標上。將xml作為輸入格式接收的外部程式可以很容易的讀取和處理xml。

readxml()方法也可以用於將xml檔案的內容讀取到dataset中。

下面為舉例**:

using system;

using system.data;

using system.datasqlclient;

class dataxmlexample{

public static void main(){

//specify sql server-specific connection string

sqlconnection thisconnection = new sqlconnection(

@"data source=(local);integrated security=sspi;initial catalog=northwind");

thisconnection.open();

dataset thisdataset = new dataset();

sqldataadapter custadapter = new sqldataadapter("select * from customers",thisconnection);

custadapter.fill(thisdataset,"customers");

sqldataadapter orderadapter = new sqldataadapter("select * from orders",thisconnection);

orderadapter.fill(thisdataset,"orders");       

sqldataadapter detailadapter = new sqldataadapter("select * from [order details]",thisconnection);

detailadapter.fill(thisdataset,"order details");

datarelation custorderrel = thisdataset.relations.add("custorders",thisdata.tables["customers"].columns["customerid"],thisdata.tables["orders"].columns["customerid"]);

custorderrel.nested = true;

datarelation orderdetailrel = thisdataset.relations.add("orderdetail",thisdata.tables["orders"].columns["orderid"],thisdata.tables["order details"].columns["orderid"]);

orderdetailrel.nested = true;

thisdataset.writexml(@"c:/tmp/nwinddata.xml");

console.writeline(@"successfully wrote xml output to file c:/tmp/nwinddata.xml");

thisconnection.close();

datarelation物件的nested屬性通知writexml()方法,將訂單細節和訂單巢狀在xml輸出中的每個父顧客之下。檔案nwinddata.xml包含資料庫中的所有資料。

《c#入門經典》清華大學出版社

C 2005 訪問資料庫(一)

microsoft.net framework資料庫訪問採用ado.net技術。ado.net提供兩種內建的.net資料提供者。一種用於ole db資料來源,一種用於microsoft sql server。通過ole db訪問資料格式 microsoft access 第三方資料庫 非關係資料。還...

C 2005 資料庫訪問(四)

在dataset中訪問多個表。ado.net模型與原來的資料訪問模型相比,有乙個最大的優點 dataset物件可以記錄多個表和他們之間的關係。也就是說在乙個操作的不同程式段之間傳遞完整的相關資料集,體系結構內在地維護資料之間關係的完整性。datarelation物件用於描述在dataset中的多個d...

C 2005 資料庫訪問(六)

從這篇開始接下來的兩篇將介紹ado.net中的sql支援。在這裡我們就不再具體介紹sql命令,這個大家可以去查相關的資料。sql使用4種命令查詢 更新 新增 刪除。我們可以用命令構建器生成sql命令,用於以select命令為基礎修改資料 update insert delete 在下面建立的程式中,...