我在用VB作数据库新添加一行的时候,
有可能出现写入数据格式不被数据库接受,
(使用的ADODC控件的recordset.addNew抛出错误)
于是,我使用on error出理错误
但是
控件已经执行了AddNew操作我想在出错处理,
怎么回滚呀??

解决方案 »

  1.   

    好像不行啊??
        On Error GoTo errPro
        If Text1(0) <> "" Then
            Dim i As Integer
            Adodc1.Recordset.AddNew
            For i = 0 To 8
                Adodc1.Recordset.Fields(i) = Text1(i)
            Next
            Adodc1.Recordset.Update
            isEmpty(0) = False
        Else
            MsgBox "请输入客户信息", vbOKOnly, "出错了"
        End If
        Exit Sub
        
    errPro:
        MsgBox "非法输入!", vbOKOnly, "出错了"
    ==>   Adodc1.Recordset.CancelUpdate本来Text1(0)应该是数字
    如果输入字母,它就进入errPro,
    但是它还是说不能插入空行
      

  2.   

    在datagrid的DataGrid1_BeforeUpdate事件中间写代码阻止运行到addnew