質問
私は、ROWIDに基づいてレコードを更新するために、次のコード行を使用しています: ここで私が使用しているデータセットdsmain ....
J = 2の場合AuditGrid.Rowsに - 1
If AuditGrid.ActiveCell.Row = j And AuditGrid.ActiveCell.Col = ColMark Then
Uvalue = Trim(AuditGrid.Cell(j, ColMark).Text)
da.UpdateCommand = New OracleCommand("update audit01 set user" & Trim(User) & "='" & Trim(Uvalue) & "' where audit01.rowid='" & Trim(AuditGrid.Cell(j, ColWRowid).Text) & "'")
End If
Next
da.Fill(DsMain, "AUDIT01")
da.Update(DsMain, "AUDIT01")
DsMain.AcceptChanges()
問題は、データベースが更新されていないということです。何をすべきか?
解決
私は次のコード行を使用しているし、それは今完全に正常に動作します...
もしAuditGrid.ActiveCell.Row> 0そして、
Uvalue = Trim(AuditGrid.Cell(AuditGrid.ActiveCell.Row, ColMark).Text)
strQry = "update audit01 set user" & Trim(User) & "='" & Trim(Uvalue) & "' where rowidtochar( audit01.rowid)='" & AuditGrid.Cell(AuditGrid.ActiveCell.Row, ColWRowid).Text & "'"
da = New OracleDataAdapter(strQry, con)
da.Fill(DsMain)
DsMain.AcceptChanges()
MsgBox("Record Updated!!")
AuditGrid.Range(AuditGrid.ActiveCell.Row, ColMark, AuditGrid.ActiveCell.Row, ColMark).DeleteByRow()
End If
所属していません StackOverflow