2009-04-27 67 views
1

我使用的代码更新记录以下行基于ROWID:这里 dsmain,我使用的数据集....更新使用oracledataadapter

对于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() 

问题是数据库没有被更新。该怎么办?

回答

0

我用下面的代码行,现在工作完全没有......

如果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