strRstConn = "select * from tbl_abc where b_Date=cdate(2011-6-29)"
rstTemp.Open strRstConn, CnnDB, adOpenStatic, adLockPessimistic
If rstTemp.EOF = True And rstTemp.BOF = True Then
MsgBox "日期为【" & dtpRecDate.Value & "】的单据都已经打印!" & vbCrLf & "或无单据。", vbInformation, "打印单据"
Else
If rstTemp.Fields("b_Check") = 1 Then
MsgBox "单据已打印,不能再次打印!", vbInformation, "打印单据"
......上面代码中的b_date字段在数据库中是日期型的,使用的cdate也没问题,
可是当b_date存储的值就是2011-6-29这个日期时,查询的结果还是为空的,
也就是说无论何时,eof与bof属性都为真。
不知为何,请高人指点。我试过用convert,提示是“函数convert未定义”
我访问的数据库是access2007,程序是VB6.0
解决方案 »
- 有偿请VB高手,急救。。。
- 关于Videosoft Flex3 的弹出窗口!急,在线等......
- 如何用VB实现本机已用端口?
- 做个像QQ泡泡等视频聊天程序
- ============如何读取Access数据库中所有表的表名============(UP有分)
- 关于ACCESS联合查询(SQL语句)问题
- 高分求救:关于表格中数据拖动的问动??来者有分
- 在開發DLL時怎么設置類的某個屬性只能輸入"CN"或"TW"
- 请教adodb.Stream对象的用法(最好有源码).
- 请问:我有一个坐标数组my(x,y),如何将其存成一个文本文件?(保证给分!!)
- COMM通讯干扰导致软件假死
- 求解如何拆解avi影片到两个picture控件中播放,100分
rstTemp.Open strRstConn, CnnDB,adopenkeyset,adlockreadonly
If rstTemp.recordcount=0 Then
MsgBox "日期为【" & dtpRecDate.Value & "】的单据都已经打印!" & vbCrLf & "或无单据。", vbInformation, "打印单据"
Else
If rstTemp.Fields("b_Check") = 1 Then
MsgBox "单据已打印,不能再次打印!", vbInformation, "打印单据"
# ‘2011-6-29’# 表示时间,最好加#号
strRstConn = "select * from tbl_abc where cdate(b_Date)=cdate(# ‘2011-6-29’#)"
这样试试
select * from tbl_abc where datediff(day,b_date,'2011-06-28') = 0 你试试这样的语句,如果还出错误提示,那么就说明你的b_Date字段的数据有问题。