如果字段不允许为空,在保存记录(insert into)的时候,自动提示!(我用的SQL server2000数据库)

解决方案 »

  1.   

    用On Error GoTo ErrLine的方法捕捉
      

  2.   

    經段代碼參考
    Private Sub Command1_Click()
      On Error GoTo ErrLine
       Dim Sql As String
       
       Sql = "insert into A(ID) values(1)"
       Cm.ActiveConnection = Cn
       Cm.CommandText = Sql
       Cm.ExecuteExit Sub
    ErrLine:
    If Err.Number = -2147217900 Then
       MsgBox "不能插入NULL值"
    End If
    End Sub
      

  3.   

    不行的。SQL 语句是异步执行的。所以设计上不返回数据库引擎的错误提示,如是直接排除非法的记录。如果有必要,你应该自己检查插入内容。
      

  4.   

    在VB6.0+WIN2000Server+SQL2000中測試能捕捉到錯誤信息
      

  5.   

    试试这个呢:On Error GoTo Err
        '代码......
    Err:
        MsgBox Err.Description不知道是不是你要的
      

  6.   

    你最好对插入的字段进行非空处理
    function Nonull(byval fieldname as string,byval record as recordset ) as variant
        if isnull( record.fields(fieldname).valule) then
     
           select case record.fields(fieldname).type '(或者vartype(record.fields(fieldname).value) 
                  case    addate                   '对应不同类型处理       end select
        else
             nonull=record.fields(fieldname).values
         endif       
    end function
      

  7.   

    isnull( record.fields(fieldname).valule)用这个来判断,我想应该不错,要不就在插入前就判断数据是否合法。
      

  8.   

    一般都是在插入之前检查那些不能为空的数据是否为空的,一来不难,二来不涉及到数据库的错误,检查数据的合法性我都是在vb中检查,让数据库自己检查就等着出数据库的错误框吧,可能还会引起vb程序的崩溃..
      

  9.   

    你的單據數據是邦定在GRID控件中還是分別邦在多個TEXT控件中?