タイトル | : DbDataAdapter.Fill メソッドの動作について |
記事No | : 4934 |
投稿日 | : 2007/02/02(Fri) 08:51 |
投稿者 | : よっちゃん |
お世話様です。 大変基本的な質問で申し訳ないですが、DbDataAdapter.Fillメソッドの動きについて 質問させていただきます。 ヘルプでのDbDataAdapter.Fill メソッドの動作については「DataSet 内の行を追加また は更新します。」との記述をされています。 For i = 0 To 1 DAdp.Fill(DSet, "TEST") ListBox1.Items.Clear() For Row = 0 To DSet.Tables("TEST").Rows.Count - 1 With DSet.Tables("TEST").Rows(Row) ListBox1.Items.Add(.Item("FD1") End With Next Next i この場合、データが2重に追加されます。 DAdp.Fill(DSet, "TEST") For i = 0 To 1 ListBox1.Items.Clear() For Row = 0 To DSet.Tables("TEST").Rows.Count - 1 With DSet.Tables("TEST").Rows(Row) ListBox1.Items.Add(.Item("FD1") End With Next Next i この場合は、データが2重には追加されません。(リストボックスには2回書き込みされますが) よって、Fillメソッドをコールする度にデータセットにドンドン追加されるのかと推測されます。 もしサーバの内容とクライアントのデータセットの内容を同期するにはFillメソッドを読み出す 前にClearするのが正しいのでしょうか? ヘルプの「更新します」の記述と違うような気がしますので、腑に落ちません。 以上、宜しくお願いいたします。
|