2011年7月16日土曜日

→→→データセットのレコード削除をデータベースに反映

データセットに取得したテーブルのレコード削除をデータベースに反映するには
SqlCommandBuilder(OleDbCommandBuilder)オブジェクトを生成してから
SqlDataAdapterオブジェクトのUpdateメソッドを実行します


New System.Data.SqlClient.SqlCommandBuilder(SqlDataAdapterオブジェクト)


SqlCommandBuilderオブジェクトは、DataSetオブジェクトの変更に対応するSQL文を自動的に作成
データセットのレコードを削除するにはDataRowオブジェクトのDeleteメソッドを実行
レコード削除後SqlDataAdapterオブジェクトのUpdateメソッドを実行するとデータセットの変更が
データベースに反映されます*Updateの引数にはDataSetオブジェクトとテーブル名を指定


SqlDataAdapterオブジェクト.Update( DataSetオブジェクト , テーブル名 )


Dim dRow As DataRow
Dim sCom As SqlCilent.SqlCommandBuilder
Dim dSet As DataSet = New DataSet("事務")
Dim dAdp As SqlClient.SqlDataAdapter
Dim scn As SqlClient.SqlConnection = "~"


dAdp = New SqlClient.SqlDataAdapter("SELECT * FROM 社員" , scn )
dAdp.Fill( dSet , "t_社員")


sCom = New SqlClient.SqlCommandBuilder( dAdp )
dRow = dSet.Tables(0).Rows( dSet.Tables(0).Rows.Count - 1 )
dRow.Delete()
dAdp.Update ( dSet ,  "t_社員")



0 件のコメント:

コメントを投稿