2017-06-16 5 views
0

現在、Accessデータベースに接続されたVBプログラムを作成中です。私は、クエリとデータアダプタを使用してデータテーブルを埋める。プログラムの後の段階で、私はアダプターとテーブルを使ってデータベースを永久的に変更したいと思っています。私はこの試みた:テーブルアダプタとデータテーブルを使用してデータベースを更新する

For Each row As DataRow In db.DBDT.Rows 

      row("fldsentda") = "Y" 
      row("flddasenddate") = Date.Today 
     Next row 


     'db.DBDT.AcceptChanges() 
     db.DBDA.Update(db.DBDT) 

* DBはクラスファイルで、dbdaは、データアダプタである、とdbdtは、データテーブル

ですが、私は唯一のデータテーブルを行っているこれらの変更が実現していない、実際のデータベース。クエリを使用して埋め込まれたデータテーブルの内部にあるデータベース行だけにどのような影響を及ぼすのか

更新:私の更新機能が書かれていないと思っています。これは別の質問かどうかは分かりませんが、データテーブルで変更されたデータベースのフィールドのみを変更する更新機能を作成するにはどうすればいいですか?

+0

変更をdb - myDA.Update(myDataTable)に送信するためにdataadapterを使用します。あなたが遭遇したように、任意の数の追加/削除/変更をデータテーブルに格納し、 (そして経済的に)。 – Plutonix

+0

ご意見ありがとうございます。最後の行である "db.DBDA.Update(db.dbdt)"とは異なるものですか? – bigboi214

+0

'AcceptChanges'を取り除くと、あなたはそれがそうではないと思います。 – Plutonix

答えて

1

は変更されないように、データテーブル内のすべてをマークし

db.DBDT.AcceptChanges() 

db.DBDA.Update(db.DBDT) 

前はこう呼んではいけません。特に備考欄のhereを参照してください。

更新メソッドを呼び出すと、自動的に受け取りを呼び出す必要があります。

+0

ありがとうございます。私はそのコード行を取り出しました。 – bigboi214

関連する問題