——此文章摘自《C#高級編程(第
版)》定價
元 特價
元 購買
RegionID // Defines the SOURCE column
DataRowVersionDefault
null));
aCommandUpdatedRowSource = UpdateRowSourceOutputParameters;
無論何時DataAdapter執行這個命令輸出參數都應映射回數據行的源在本例中是DataTable中的一行該標志說明了應更新什麼數據—— 存儲過程有一個輸出參數映射回DataRow它應用的列是RegionID這是在命令定義中定義的
UpdateRowSource的值如表所示
UpdateRowSource值
說 明
Both
存儲過程可以返回輸出參數和一個完整的數據庫記錄這些數據源都用於更新源數據行
FirstReturnedRecord
該命令返回一個記錄該記錄的內容應合並到最初的源DataRow中當給定的表有許多默認(或計算)列時使用這個值很有用因為在執行插入語句之後這些行需要與客戶機上的DataRow同步例如INSERT (列) INTO (表) WITH (主鍵碼)SELECT (列) FROM (表) WHERE (主鍵碼)返回的記錄應合並到源數據行上
None
刪除從該命令返回的所有數據
OutputParameters
命令的任何輸出參數都映射到DataRow的對應列上
表
更新現有的行
更新DataTable中一個已經存在的行只需使用帶有一個列名或列號的DataRow索引器即可如下面的代碼所示
r[RegionDescription]=North West England;
r[] = North East England;
這兩個語句是等價的(在本例中)
Changed RegionID description
Eastern Unchanged
Western Unchanged
Northern Unchanged
Southern Unchanged
North West England Modified
在更新數據庫前被更新的行應把其狀態設置為Modified其值如上所示
刪除一行
刪除一行需要調用Delete()方法rDelete();
被刪除的行把其行狀態設置為Deleted但不能從被刪除的DataRow中讀取列因為它們已經不再有效當調用適配器的Update()方法時所有被刪除的行都會使用DeleteCommand在本例中是執行RegionDelete存儲過程
[] []
From:http://tw.wingwit.com/Article/program/net/201311/15148.html