RSS

タグ : DataAdapter

[ADO.NET] AcceptChangesすると、DataAdapter経由でDBが更新されない

AcceptChangesすると、DataAdapter経由でDBが更新されません。
下のコメントをとると、DataRowVersionがNoChangeになるため。
// dr.AcceptChanges();
sda.Update(ds,"Table_1");

[ADO.NET] オプティミスティック同時実行制御

ポイントはmyParam=のとこと、OnRowUpdatedイベント

『DataAdapter.RowUpdated イベント
これまでに説明した方法に関連して DataAdapter.RowUpdated イベントを使用すると、オプティミスティック同時実行制御違反をアプリケーションに通知できます。RowUpdated は、DataSet から Modified 行の更新を行ったときに発生します。これにより、例外発生時の処理、カスタム エラー情報の追加、再試行ロジックの追加などの特別の処理コードを追加できます。RowUpdatedEventArgs オブジェクトは、テーブルの変更行に対する特定の更新コマンドによって影響された行数が設定された RecordsAffected プロパティを返します。オプティミスティック同時実行制御をテストするように更新コマンドを設定した場合は、オプティミスティック同時実行制御違反の発生時に、RecordsAffected プロパティは値 0 を結果として返します。値が 0 なのはレコードが更新されないためです。この場合、例外がスローされます。RowUpdated イベントを使用すると、発生したイベントを処理したり、UpdateStatus.SkipCurrentRow のような RowUpdatedEventArgs.Status 値を設定することで例外を抑止したりできます。RowUpdated イベントの詳細については、「DataAdapter イベントの使用」を参照してください

[C#]

seeAlso:http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/cpguide/html/cpconoptimisticconcurrency.asp
note:UpdateCommand Original ADO.NET でGoogle

[ADO.NET] Sample Of Update DataSet with DataAdapter