DataAdapterのUpdateメソッドの仕組み。
データベースから抽出したデータ(DataSet)を編集。その後Updateメソッドを
使うとデータの編集した箇所がデータベースに反映されます。 なぜ自動的に反映できるのでしょうか?その仕組みを簡単に説明します。 DataSetを使ってデータベースからデータを格納した場合、DataTableの行ステータスは Unchanged(変更なし)となってます。 新しい行を追加すると行ステータスはAddedとなり、既存の行を編集すると Modified(変更あり)、既存の行を削除するとDeletedとステータスが変化します。 この行ステータスによってDataAdapterのUpdateメソッドは実行するコマンド (INSERT/UPDATE/DELETE)を決定します。 DataAdapterにはInsertCommandプロパティ、UpdateCommandプロパティ、DeleteCommandプロパティが用意されてます。 このプロパティにINSERTの時のSQL、UPDATEのときのSQL、DELETE文のときのSQLを 設定すると、Updateメソッドはその設定に従ってコマンドを実行します。 こんな感じです。シンプルな仕組みですよね。 |