请教各位大侠:在一个commandbotton cleck事件中写入此语句!Set adors = adocon.Execute("insert into zgk values(" & Text1 & ",'" & Text2 & "','" & Text3 & "','" & Text4 & "','" & Text5 & "','" & Text6 & "','" & Text7 & "')")运行时老是返回“要求对象错误”,该表单中确实有TEXT1~TEXT7控件啊!请问是什么问题呢?另外,分隔符'和符号"各自的作用是什么呢?

解决方案 »

  1.   

    你把","换成& vbtab & 看看
      

  2.   

    全部语句是这样的:Call main
    Adodc1.RecordSource = "select * from zgk where zgh='" + Text1.Text + ""
    Adodc1.Refresh
    If Adodc1.Recordset.RecordCount = 0 Then
    c = MsgBox("确认要保存该信息吗?", 33, "职工信息管理")
    If c = vbOK Then
      Set adors = adocon.Execute("insert into zgk values(" & Text1 & ",'" & Text2 & "','" & Text3 & "','" & Text4 & "','" & Text5 & "','" & Text6 & "','" & Text7 & "')")
     MsgBox "数据保存成功!!", 32, "职工信息管理"
     cmd_save.Enabled = False
     cmd_add.Enabled = True
    Else
    End If
    Else
    MsgBox "对不起,该信息已经保存过,不能再进行保存", 64, "职工信息管理"
    End If
    Adodc1.RecordSource = "select * from zgk order by zgh"
    Adodc1.Refresh
    adocon.Close顺便再问问Call main的作用是什么?
      

  3.   

    '这样试试:
    adocon.Execute "insert into zgk(字段1,...,字段7) values(" & Text1 & ",'" & Text2 & "','" & Text3 & "','" & Text4 & "','" & Text5 & "','" & Text6 & "','" & Text7 & "')"
      

  4.   

    改成这样还是不行!好奇怪!  Set adors = adocon.Execute("insert into zgk(zgh,xm,nl,xb,gz,ygz,bz) values(" & Text1 & ",'" & Text2 & "','" & Text3 & "','" & Text4 & "','" & Text5 & "','" & Text6 & "','" & Text7 & "')")返回信息是:实是错误“424”,要求对象。
               
    请各位高手指教。。
      

  5.   

    Set adors = adocon.Execute("insert into zgk(zgh,xm,nl,xb,gz,ygz,bz) values(" & Text1 & ",'" & Text2 & "','" & Text3 & "','" & Text4 & "','" & Text5 & "','" & Text6 & "','" & Text7 & "')")这句话没有返回结果
    所以set adors = ...出错了
    不是sql语句出错了
      

  6.   

    正解如下:
        Call main
        Dim RSRowCount As Long
        RSRowCount = CLng(adocon.Execute("select * from zgk where zgh='" + Text1.Text + "'")(0))
        
        If RSRowCount = 0 Then
            c = MsgBox("确认要保存该信息吗?", 32, "职工信息管理")
            If c = vbOK Then
                On Error Resume Next
                adocon.Execute "insert into zgk values(" & Text1 & ",'" & Text2 & "','" & Text3 & "','" & Text4 & "','" & Text5 & "','" & Text6 & "','" & Text7 & "')"
                If Err.Number = 0 Then
                    MsgBox "数据保存成功!!", 64, "职工信息管理"
                Else
                    MsgBox "数据保存失败,原因是:" & Err.Description, 16, "错误信息"
                    Err.Clear
                End If
                cmd_save.Enabled = False
                cmd_add.Enabled = True
            Else
            
            End If
        Else
            MsgBox "对不起,该信息已经保存过,不能再进行保存", 64, "职工信息管理"
        End If
        
        Adodc1.RecordSource = "select * from zgk order by zgh"
        Adodc1.Refresh
        adocon.Close
      

  7.   

    try :
    Text1======>Text1.Text
      

  8.   

    我对ADO这块是理解得不太好!有没有好书介绍呢?关于ADO的!谢谢!
      

  9.   

    就看SQL SERVER自带文档,内容齐全,省钱省力!
    我个人建议你要提升如下功力:
    1.命名规则;
    2.中央除错;
    3.ADO编程;