分析ADO.NET屬性技巧與問題
你將使用ADO.NET屬性的對象與數據源進行交互。ADO.NET屬性管理可以與據源進行連接。ADO.NET屬性允許你與數據源進行檢索,使用DataSet并實現能進行讀取或者寫入數據源的SqlDataAdapter。
創建 DataRelation 所需的參數是所創建的 DataRelation 的名稱以及對用作關系中父列和子列的那些列的一個或多個 DataColumn 引用的數組,ADO.NET屬性 當創建 DataRelation 后,可以使用它在多個表之間導航和檢索值。
默認情況下,向 DataSet 中添加 DataRelation 會將一個 UniqueConstraint 添加到父表中并將一個 ForeignKeyConstraint 添加到子表中。ADO.NET屬性有關這些默認約束的更多信息,請參見數據表約束 (ADO.NET)。#t#
以下代碼示例使用 DataSet 中的兩個 DataTable 對象來創建一個 DataRelation。 每個 DataTable 包含一個名為 CustID 的列,它用作兩個 DataTable 對象之間的鏈接。 該示例將單個 DataRelation 添加到 DataSet 的 Relations 集合中,ADO.NET屬性該示例中的第一個參數指定所創建的 DataRelation 的名稱。 第二個參數設置父 DataColumn,第三個參數設置子 DataColumn。
- SqlCommandBuilder sqlCommandBuilder1 = new SqlCommandBuilder ( sqlDataAdapter1 ) ;
- //以sqlDataAdapter1為參數來初始化SqlCommandBuilder實例
- dsDataSet1.Tables["Customers"].Rows[0].Delete ( ) ;
- //刪除DataSet中刪除數據表Customers中第一行數據
- sqlDataAdapter1.Update ( dsDataSet1 ,"Customers" ) ;
- //調用Update方法,以DataSet中的數據更新從數據庫
- dsDataSet1.Tables["Customers"].AcceptChanges ( ) ;
DataRelation 也具有 Nested 屬性,如果該屬性設置為 true,則來自子表的行會在使用 WriteXml 以 XML 元素形式編寫時嵌套在來自父表的關聯行中。 有關更多信息,請參見在數據集中使用 XML (ADO.NET屬性)。