いしもち通信

お魚大好き人間の情報交換。旅先の思い出情報交換。
サーバー管理。学校でのAccess利用。PC関連情報。
社会問題。

データベースプログラミング4

2018-04-13 13:58:43 | Weblog

 さて、細かいコードの説明の前に、データベースとのやり取りをする仕組みの概略を理解しておく。

3で述べたように、最初にデータ接続があった。

これは、データベースに接続するための設定情報を含むAdapterと呼ばれるプログラムとConnectionと呼ばれるプログラムなどデータベースに接続するための必要なプログラムの総称である。VisualStudioを使ってデータベースおよびテーブルを作成すると自動的にデータ接続が設定される。

 その後、データソースを追加したが、これがデータセットDataSetである。

データセットはデータベースのコピーのようなものでメモリ上に展開される。直接データベースとやり取りするのではなく、メモリ上のデータセットとやり取りして、全てが終了するときに、データベースへ変更結果を書き込むようにするのである。メモリ上の処理なので高速であること等のメリットがある。

 横文字のコンポーネントがいくつか登場しました。改めて確認しておく。

tableBindingNavigator フォーム上のインターフェース、独自デザインで自作も可能。

tableBindingSource フォーム上のコントロールとデータベースを接続する機能

tableTableAdapter データの取得や変更の通知を管理、テーブルへのデータをDataSetに格納。

tableAdapterManagerデータを関連するデータテーブルに保存する機能を提供するコンポーネント。

tableTableAdapterとtableAdapterManagerの違いはよくわからない。しかし、Managerの登場が後なので、データの更新にはこちらを使うようである。UpdateAllメソッドがそれ。

tableTableAdapterの方はUpdateメソッドで、こちらでも更新は可能。ただし、エラーが発生する場合があるため、アダプターの Update メソッドを呼び出すコードは try/catch ブロック内に配置する必要がある。

 自動生成されるtableBindingNavigatorSaveItem_ClickイベントはManagerよるUpdateAllで更新。try/catch ブロックはない。

 初期設定のまま、実行するとデータグリッドにテーブルの全データが表示される。

これにはAdapterのFillメソッドが使われている。FillはSELECTコマンドの実行結果を格納している。検索には、これにフィルターを付加して実行させる。詳細は次回とする。

内部を理解するには結構大変である。

ここまである程度理解して、独自の機能を追加してコードを記述していく。

 

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« ふたたび、つぼだいの話 | トップ | データベースプログラミング5 »
最新の画像もっと見る

コメントを投稿

Weblog」カテゴリの最新記事