给看看下列程序:
txtyear.text,txtmonth.text,txtdat.txt 分别填写年,月,日的文本框
dim strSQL as string
If TxtYear.Text = "" Then
MsgBox "请填写统计年份!", vbOKOnly + vbExclamation, "统计分析"
TxtYear.SetFocus
Exit Sub
ElseIf TxtYear.Text <> "" And TxtMonth.Text = "" And TxtDay.Text = "" Then
strSQL = TxtYear.Text
ElseIf TxtYear.Text <> "" And TxtMonth.Text <> "" And TxtDay.Text = "" Then
strSQL = TxtYear.Text & "-" & TxtMonth.Text
ElseIf TxtYear.Text <> "" And TxtMonth.Text <> "" And TxtDay.Text <> "" Then
strSQL = TxtYear.Text & "-" & TxtMonth.Text & "-" & TxtDay.Text
Else
MsgBox "统计时段填写错误,无法进行统计!", vbOKOnly + vbExclamation, "统计分析"
TxtYear.SetFocus
Exit Sub
End If
用的sql server 2000 数据库 时间字段内容为 2006-9-30
adodc1.recordsouce="select * from 销售单 where 时间 like '%" & CStr(strSQL) & "%'"
adodc1.refresh
set datagrid.recordsouce=adodc1
用的sql server 2000 数据库 时间字段内容为 2006-9-30
问题是 年查询:txtyear文本框中输入2006 能查询出数据
月查询:在txtyear输入2006 ,txtmonth 输入9 就查不出数据了
日查询也查不出数据,问以下此类模糊查询程序怎么写?
參考答案:思路是没错的。查询这类错误最好把SQL语句打印到屏幕上,这样容易查找错误原因。
另外TxtYear.Text <> "" And TxtMonth.Text <> "" And TxtDay.Text <> "" Then语句中的TEXT文本框最好都加上Trim()函数,去掉两边的空格