- - PR -
データベースの更新について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2004-08-25 18:02
お世話になります。
現状として、SQLサーバーのデータベースから、データセットを作成して、 VB.NETのWindowsApplicationのFormにはテキストボックスをいくつか作成し ました。そしてFormを実行したときに、テキストボックスにデータセット からデータを持ってくるようにしました。 次の作業として、Formを実行時にテキストボックス上でデータを上書きして、 更新、削除ボタンを押すとデータセットとデータベースのデータが更新、削除 されるようにしようとしました。 以前データグリッドを使用したときは、プロパティビルダから、更新、削除 する項目がありました。そしてソースの中でEditCommandやUpdateCommandなど を使って、データグリッドに入力したデータをデータベースに更新、削除でき ました。 しかしテキストボックスに入力したデータを、どうすればデータベースの更新 ができるかわかりません。 ご存知でしたらご教授お願いします。 長くなっていしまいましたが、よろしくお願いします。 |
|
投稿日時: 2004-08-25 18:15
普通にSQL Serverに対してSQL文を発行してあげるだけで良いんじゃないでしょうか?
ただ、SQLレスでDB更新を行いたいというと話は違いますが・・・ データグリッドでは、コンポーネント内部でO/RマッピングしSQLの発行を コンポーネントの内部で吸収しているだけだと思います。 普通(昔からのプログラムでは)なら、DBにSQLを発行してデータを更新します。 ただ、O/Rマッピングした方が今っぽくてかっこいいですけどね^_^; 話がわき道にそれましたが、 「ADO.NET UPDATE」等でググればヒントらしいページにたどり着けると思います。 |
|
投稿日時: 2004-08-26 10:07
さかもと と申します。
Hodgkin様がおっしゃるようにSQL文発行で良いかと思います。 もしデータアダプターのUPDATEメソッドを使う(うまく表現できずにすいません) のであれば・・・。 ============================================================== '/現在指定しているレコードを選択(下をご覧下さい) Dim drv As DataRowView = getCurrentDataRowView() drv.BeginEdit() drv("A") = a.Text drv("B") = b.Text ・ ・ ・ drv.EndEdit() SqlDataAdapter1.Update(DataSet1) '/今現在のレコードを判断します Private Function getCurrentDataRowView() As DataRowView Dim bm As BindingManagerBase = Me.BindingContext(DataSet1, "mst_A") Return CType(bm.Current, DataRowView) End Function ================================================================ というやりかたもあるようです(書籍によると) ご参考までに。 |
1