我用DAO做一个查询,使用数据库 查询后,有一个重要的数据集总是出现noting的提示,代码如下:
 Set Db_TimeAtt = Workspaces(0).OpenDatabase(App.Path + "\Master.mdb")
    Set Qdf_TimeAtt = Db_TimeAtt.QueryDefs("Qry_Leave") ' leave data
        
    'common
    Set prm_S_SDate = Qdf_TimeAtt.Parameters("S_Date")
    Set prm_S_EDate = Qdf_TimeAtt.Parameters("E_Date")
    
    Set prm_S_Suban = Qdf_TimeAtt.Parameters("S_Sabun")
    Set Prm_S_Part = Qdf_TimeAtt.Parameters("S_Part")
    Set prm_S_LastName = Qdf_TimeAtt.Parameters("S_LastName")
    Set prm_S_Name = Qdf_TimeAtt.Parameters("S_Name")
    Set prm_S_Tagno = Qdf_TimeAtt.Parameters("S_Tagno")
    Set prm_S_MBuso = Qdf_TimeAtt.Parameters("S_MBuso")
    Set prm_S_Title = Qdf_TimeAtt.Parameters("S_Title")
    Set prm_S_StartDate = Qdf_TimeAtt.Parameters("S_StartDate")
    Set prm_S_EndDate = Qdf_TimeAtt.Parameters("S_EndDate")
    Set prm_S_StartTime = Qdf_TimeAtt.Parameters("S_StartTime")
    Set prm_S_EndTime = Qdf_TimeAtt.Parameters("S_EndTime")
    Set prm_S_Re = Qdf_TimeAtt.Parameters("S_Re")
    
    prm_S_SDate = Trim(txtSdate.Text)
    prm_S_EDate = Trim(txtEdate.Text)    Prm_S_Part = IIf(DBCombo1.Text = "", "*", DBCombo1.Text)
    prm_S_MBuso = IIf(DBCombo2.Text = "", "*", DBCombo2.Text)
    prm_S_Title = IIf(DBCombo3.Text = "", "*", DBCombo3.Text)
    prm_S_Suban = IIf(DBCombo6.Text = "", "*", DBCombo6.Text)
    prm_S_Tagno = IIf(DBCombo7.Text = "", "*", DBCombo7.Text)
    prm_S_Name = IIf(DBCombo5.Text = "", "*", DBCombo5.Text)
    prm_S_LastName = IIf(DBCombo4.Text = "", "*", DBCombo4.Text)    
     Set Rs_TimeAtt = Qdf_TimeAtt.OpenRecordset(dbOpenSnapshot)
    
    With Rs_TimeAtt
        If .RecordCount <> 0 Then
            .MoveLast
            .MoveFirst
            Call GridView
            .Close
            Set Db_TimeAtt = Nothing
        Else
            MsgBox "没有发现数据.", vbInformation + vbOKOnly, "进出控制程式"
            Exit Sub
        End If
    End With
在    Set Rs_TimeAtt = Qdf_TimeAtt.OpenRecordset(dbOpenSnapshot)中总是不能将Rs_TimeAtt SET成功,Rs_TimeAtt 显示的总是为noting, 数据库没有错,我实在是没辙了,望大虾们帮我!!万分感谢!!1

解决方案 »

  1.   

    查询“Qry_Leave”有参数吗?如果有请用QueryDef对象写参数。
      

  2.   

    有的,不过用QueryDef对象写参数,我不是很明白!!!
      

  3.   

    dim db as database
    dim que as querydef
    dim d as recordsetset db=opendatabae()
    set que=db.querydef("Qry_Leave")
    que!S_MBuso=IIf(DBCombo1.Text = "", "*", DBCombo1.Text)
    .
    .
    .
    set d=que.openrecordset()
    就可以了。
      

  4.   

    不行呀,大哥,我试了 还是noting!!