设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 2241|回复: 11
打印 上一主题 下一主题

[Access本身] [求助]标准表达式中数据类型不匹配?

[复制链接]
跳转到指定楼层
1#
发表于 2005-9-17 17:55:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在编写access程序时,遇到如下问题:

    Dim con As Object

    Dim rs As New ADODB.Recordset

    Set con = Application.CurrentProject.Connection

    strSQL = "select * from 水电记录表 where 水电记录表.抄表日期 = " & "'" & Forms!增加年月!请输入年月 & "'"

    rs.Open strSQL, con, adOpenKeyset, adLockBatchOptimistic

程序执行到最后有下划线的这句话报错,信息为:“标准表达式中数据类型不匹配”

水电记录表中的“抄表日期”为日期型字段,窗体中“Forms!增加年月!请输入年月”也是日期型,strSQL = "select * from 水电记录表 where 水电记录表.抄表日期 = '2005年09月' "

我认为是条件语句where的问题,可是不知道怎样改写才能让程序通过,请前辈给予指点,谢谢啦!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-9-17 18:34:00 | 只看该作者
日期型数据不是用引号,而是#,比方说:



抄表日期=#2005-01-02#
3#
 楼主| 发表于 2005-9-17 19:40:00 | 只看该作者
我也知道日期格式#2005-09-01#,可是在strSQL字符串中怎样组织呢?

我把"'" 改成了"#",还是不行啊!

到底怎样写呢?
4#
 楼主| 发表于 2005-9-18 00:47:00 | 只看该作者
具体语法怎么写呀?
5#
发表于 2005-9-18 01:18:00 | 只看该作者
如果你能确认窗体上的日期是日期型的,可以这样写了试试:strSQL = "select * from 水电记录表 where" & "水电记录表.抄表日期 = " & Forms!增加年月!请输入年月不过从你的strsql中的Forms!增加年月!请输入年月来看,不像是日期型的,导致与水电记录表.抄表日期类型不匹配.

6#
发表于 2005-9-18 01:34:00 | 只看该作者
以下是引用asdf26在2005-9-17 16:47:00的发言:



具体语法怎么写呀?



strSQL = BuildCriteria("select * from 水电记录表 where 水电记录表.抄表日期",dbDate,Forms!增加年月!请输入年月)

从语法上来说这样就正确了,但是从程序上来说,前面sgrshh29提出的很有道理,虽然没有看过你的窗体控件怎么命名,但是感觉你的Forms!增加年月!请输入年月确实不象是日期型的,好好检查一下。
7#
 楼主| 发表于 2005-9-18 21:53:00 | 只看该作者
谢谢!我的窗体上的控件是文本框,我在格式和有效性上做了限制:“9999\年99\月”,另外,我在水电记录表的日期型字段上也做了格式限制:“yyyy年mm月”。根据您的启发,我在程序中加了一个日期型变量"dateLS"来记载"Forms!增加年月!请输入年月"的值,并且将strSQL替换成如下格式:dim dateLS as datedateLS = Forms!增加年月!请输入年月strSQL = "select * from 水电记录表 where 水电记录表.抄表日期=" & dateLSrs.SQL=strSQL......程序通过了,但是结果却错了!因为rs(注:recordset)永远为空,即:rs.recordcount=0,我很郁闷!请教大虾指点迷津!
8#
 楼主| 发表于 2005-9-18 22:42:00 | 只看该作者
版主:你好!BuildCriteria是什么函数?我没见过。帮助上面也查不到。
9#
发表于 2005-9-24 07:39:00 | 只看该作者
strSQL = "select * from 水电记录表 where 水电记录表.抄表日期 = #" & cstr(cdate(Forms!增加年月!请输入年月)) & "#"



我想是可行的。
10#
发表于 2005-9-24 07:53:00 | 只看该作者
以下是引用asdf26在2005-9-18 14:42:00的发言:



版主:你好!

BuildCriteria是什么函数?我没见过。帮助上面也查不到。



Application类的一个方法。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-12-2 02:23 , Processed in 0.129711 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表