0

データベースにブール値フィールドを持つテーブルがあります。その値を確認し、別のテーブルのレコードを削除するためにさらに使用したい...

ダミーコードは次のようになります。

private sub del_Machine()

 Dim machine_srno as string
 Dim asql As String = ("SELECT * FROM Installation_det")
 cnnOLEDB.Open()
 Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand(asql, cnnOLEDB)
 Dim dr As OleDb.OleDbDataReader = cmd.ExecuteReader
 If dr.Read = True Then
    if IsTFT.checked=true then      ----------> IsTFT is a column in Installation_det table
     machine_srno=Machine.value ------------> Machine is also a field in database

    DeleteQuery = "DELETE * FROM new_table WHERE sr_no=@mach_srno"
            Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand(DeleteQuery,    cnnOLEDB)

            cmd.Parameters.AddWithValue("@mach_srno", machine_srno)
            cmd.ExecuteNonQuery()

end sub

実際のコーディングを手伝ってください...データテーブルとデータセットを完全に理解するのに役立つと思いますが、正確に使用する方法がわかりません..コードで提案してください...ありがとう..

4

1 に答える 1

1

DataReader から値を取得し、クエリに使用します

If dr.Read = True Then
    Dim isTFT = Convert.ToBoolean(dr("IsTFT"))
    Dim machine_srno = dr("Machine").ToString()
    if isTFT = True Then
        Dim DeleteQuery = "DELETE * FROM new_table WHERE sr_no=@mach_srno"
        Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand(DeleteQuery,    cnnOLEDB)
        cmd.Parameters.AddWithValue("@mach_srno", machine_srno)
        cmd.ExecuteNonQuery
    End If
ENd If
于 2013-04-19T07:39:43.933 に答える