我用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
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
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()
就可以了。