设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2235|回复: 6
打印 上一主题 下一主题

[ADO/DAO] ACCESS代码中的类型不匹配问题

[复制链接]
跳转到指定楼层
1#
发表于 2009-2-6 15:14:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
早上问了个SQL语句的转换,按照提示,做了一下,出现类型不匹配的问题,查了一下,都是字符串的用"  ",数据性的用' ',可我改来改去,还是不可以,为了方便期间,我把条件放成3个,其中两个字段是文本类型,两个是数字类型(可以看表的类型设置)
请大家帮个忙,要求是按照附件上的表和窗体,能够按照查询中的"查询1"中的条件,该写在窗体"自助查询"中的确定按纽事件中,将结果显示在LISTVIEW中去,详细的请看附件.
其中自助查询子窗体是我用子窗体实现的,我现在想用LISTVIEW来实现这个功能,拜托各位了~~~

1\原来的帖子: http://www.office-cn.net/vvb/thread-68398-1-1.html

2\

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2009-2-6 15:15:06 | 只看该作者
请大家帮我该一下自助查询窗体中的代码~~
3#
发表于 2009-2-6 15:53:30 | 只看该作者
加了一个函数

Private Function sChkWhere(sWhere As String) As String
    If sWhere = "" Then
        sChkWhere = sWhere & " where"
    Else
        sChkWhere = sWhere & " and"
    End If
End Function

查询按钮内代码如下

Private Sub 查询_Click()
    Dim sSQL As String
    sSQL = "select tnoid, tnam, dgnum from DBBackup"
   
    Dim sWhere As String
    If Not IsNull(Me.Text1.Value) And Not Trim(Me.Text1.Value) = "" Then
        sWhere = sChkWhere(sWhere) & " tnoid like '%" & Me.Text1.Value & "%'"
    End If
   
    If Not IsNull(Me.Text2.Value) And Not Trim(Me.Text2.Value) = "" Then
        sWhere = sChkWhere(sWhere) & " tnam like '%" & Me.Text2.Value & "%'"
    End If
   
    If Not IsNull(Me.Text5.Value) And Not Trim(Me.Text5.Value) = "" Then
        sWhere = sChkWhere(sWhere) & " dgnum >= " & Me.Text5.Value
    End If
   
    If Not IsNull(Me.Text6.Value) And Not Trim(Me.Text6.Value) = "" Then
        sWhere = sChkWhere(sWhere) & " dgnum <= " & Me.Text5.Value
    End If
   
    sSQL = sSQL & sWhere
   
    Debug.Print sSQL
    ListView1.ListItems.Clear
   
    Dim rs As New ADODB.Recordset
    Dim itemX
   
    rs.Open sSQL, CurrentProject.Connection
    Do While Not rs.EOF
        Set itemX = ListView1.ListItems.Add()
        itemX.Text = rs!tnoid
        itemX.SubItems(1) = rs!tnam
   
        rs.MoveNext
    Loop
    rs.Close
    Set rs = Nothing
End Sub



******************
*  一切皆有可能  *
******************

同一贴子不回复第二次
QQ群 48866293 / 12035577 / 7440532 / 13666209
http://forum.csdn.net/SList/Access .
http://www.accessbbs.cn/bbs/index.php .
http://www.accessoft.com/bbs/index.asp .
http://www.access-programmers.co.uk/forums .
http://www.office-cn.net .
.
http://www.office-cn.net/home/space.php?uid=141646 .
4#
 楼主| 发表于 2009-2-6 17:13:35 | 只看该作者
非常感谢ACMAIN_CHM 的热情帮助~~

不知道有没有好的办法和方法可以复制或导出LISTVIEW中显示的数据啊~

期待~~~
5#
发表于 2009-2-6 18:01:22 | 只看该作者
本帖最后由 koutx 于 2009-2-6 18:08 编辑

3楼已给出准确方案,偶帮你将样库改了一下,虽方法有异但已通过。既然已作好了就发给你参考吧。
Listview中的数据不就是Recordset中的吗?怎么导出就不是问题了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
6#
 楼主| 发表于 2009-2-6 21:04:29 | 只看该作者
3楼已给出准确方案,偶帮你将样库改了一下,虽方法有异但已通过。既然已作好了就发给你参考吧。
Listview中的数据不就是Recordset中的吗?怎么导出就不是问题了。
34883
koutx 发表于 2009-2-6 18:01


能明示吗?
小弟菜的很,不好意思啊,呵呵~~

顺便问一下,我自己没有测试,用这样的方式查询数据速度快,还是利用子窗体那样速度快啊~~~
7#
发表于 2009-2-6 21:37:18 | 只看该作者
如欲导出为Excel,可搜索论坛相应贴子,有详细样本。至于哪个快,应该是子窗体莫属吧。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-13 08:39 , Processed in 0.099257 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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