tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルDbDataAdapter.Fill メソッドの動作について
記事No4934
投稿日: 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するのが正しいのでしょうか?
ヘルプの「更新します」の記述と違うような気がしますので、腑に落ちません。
以上、宜しくお願いいたします。

[ツリー表示へ]