Vb6 如何在日期之间搜索?

Vb6 如何在日期之间搜索?,vb6,Vb6,我正在使用ms access数据库,我想获取两个日期之间的数据 stdate= starting date edate=end date 我正在使用下面的代码 Private Sub Label3_Click() DataGrid1.Visible = True Dim stdate As Date Dim edate As Date Format = stdate("mm/dd/yyyy") Format = edate("mm/dd/yyyy") stdate = Text1.Text

我正在使用ms access数据库,我想获取两个日期之间的数据

stdate= starting date

edate=end date
我正在使用下面的代码

Private Sub Label3_Click()
DataGrid1.Visible = True
Dim stdate As Date
Dim edate As Date
Format = stdate("mm/dd/yyyy")
Format = edate("mm/dd/yyyy")
stdate = Text1.Text
edate = Text2.Text

Adodc1.RecordSource = "SELECT * FROM sales_info WHERE  date BETWEEN &stdate& and              &edate& "
Adodc1.Refresh
End Sub
我收到的错误有:

syntax error expected array(in format statement)

 missing operator in query expression date.
谢谢

plz帮助


我是一个初学者

尝试更改字段名称,因为日期是保留关键字


更改日期格式后,使用符合VB6的格式,行格式为stdatemm/dd/yyyy,行格式为edatemm/dd/yyyy 在我看来不像是有效的VB6

您将需要通过将位粘合在一起来构建查询字符串,而解释器无法看到引号内的内容,从而理解您需要一个变量

从sales_info中选择*,其中日期介于&stdate&和&edate&

之间,此代码应起作用-

Private Sub Label3_Click()
  DataGrid1.Visible = True
  Dim stdate As String
  Dim edate As String
  stdate = Format(Text1.Text, "mm/dd/yyyy")
  edate = Format(Text2.Text, "mm/dd/yyyy")

  Adodc1.RecordSource = "SELECT * FROM [sales_info] WHERE [date] BETWEEN #" & stdate & " and " & edate & "]"
  Adodc1.Refresh
End Sub
我也同意@Joe的观点,你不应该在列名中使用date,因为它通常是一个保留字。你可以绕开它,但从长远来看,它会让生活变得更艰难。

如果这有效,试试看

    Adodc1.RecordSource = = "SELECT * " & "FROM tbl " & _
        "WHERE Date >= #" & stdate & "# AND Date <= #" & edate & "# "
    Adodc1.Requery

表1 BindingSource.Filter=DateColumnName>=&DateTimePicker1.text&和DateColumnName