我想通過從列 (PRSOBNET) 中的另一個表 (IFGTS) 中獲取值來進行更新,然后將該值與列 (CIU) 中表 (GSDTS) 中的 sql2 按鈕的文本框中的值相加是否可能像我在“ciu”列中標記為黃色的螢屏截圖結果一樣,如果我想將 sql1 按鈕和 sql2 按鈕合并為一個按鈕命令怎么辦。for sql2 命令沒有作業或沒有成功。請最佳解決方案。
謝謝杰克
Private Sub SQL1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SQL1.Click
Try
connectionString = cn
con = New OleDbConnection(connectionString)
con.Open()
Dim sql As String = "UPDATE GSDTS SET CIUB = CIU,CIU = NULL,DPRB = DPR,DPR = NULL WHERE QTY > 0"
cmd = New OleDbCommand(sql, con)
cmd.ExecuteNonQuery()
con.Close()
Me.fillDataGridView1()
Catch myerror As OleDbException
MessageBox.Show("Error: " & myerror.Message)
Finally
End Try
End Sub
Private Sub SQL2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SQL2.Click
Try
connectionString = cn
con = New OleDbConnection(connectionString)
con.Open()
Dim sql As String = "INSERT INTO GSDTS (CIU) SELECT t1.PRSOBNET FROM IFGTS t1 WHERE NOT EXISTS(SELECT ITM FROM GSDTS t2 WHERE t2.ITM = t1.ITM) AND GDN = 'A.04.01.002.001'"
cmd = New OleDbCommand(sql, con)
cmd.ExecuteNonQuery()
con.Close()
Me.fillDataGridView1()
Catch myerror As OleDbException
MessageBox.Show("Error: " & myerror.Message)
Finally
End Try
End Sub

uj5u.com熱心網友回復:
您可以從按鈕處理程式中提取資料庫代碼,然后如果您想要執行這兩個操作,請呼叫兩個提取的方法,如下所示:
Sub UpdateGsdts()
Try
Dim sql As String = "UPDATE GSDTS SET CIUB = CIU, CIU = NULL, DPRB = DPR, DPR = NULL WHERE QTY > 0"
Using conn As New OleDbConnection(cn),
cmd As New OleDbCommand(sql, conn)
conn.Open()
cmd.ExecuteNonQuery()
End Using
Catch myerror As OleDbException
MessageBox.Show("Error: " & myerror.Message)
End Try
End Sub
Sub InsertIntoGsdts()
Try
Dim sql As String = "INSERT INTO GSDTS (CIU) SELECT t1.PRSOBNET FROM IFGTS t1 WHERE NOT EXISTS(SELECT ITM FROM GSDTS t2 WHERE t2.ITM = t1.ITM) AND GDN = 'A.04.01.002.001'"
Using conn As New OleDbConnection(cn),
cmd As New OleDbCommand(sql, conn)
conn.Open()
cmd.ExecuteNonQuery()
End Using
Catch myerror As OleDbException
MessageBox.Show("Error: " & myerror.Message)
End Try
End Sub
Sub InsertIntoAndUpdateGsdts()
InsertIntoGsdts()
UpdateGsdts()
fillDataGridView1()
End Sub
Private Sub SQL1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SQL1.Click
UpdateGsdts()
fillDataGridView1()
End Sub
Private Sub SQL2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SQL2.Click
InsertIntoGsdts()
fillDataGridView1()
End Sub
該Using陳述句確保資料庫連接和命令使用的非托管資源在使用后被處理掉。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/474298.html
標籤:sql VB.net 视觉工作室 2010 数据库 oledb 命令
