找回密码
 加入
搜索
查看: 2634|回复: 4

[AU3基础] access按条件查询一个字段,然后输出所有符合条件的这个字段的内容。[已解决]

[复制链接]
发表于 2011-10-29 21:16:38 | 显示全部楼层 |阅读模式
本帖最后由 lenlydia 于 2011-10-29 21:54 编辑

数据库:
computer     note
1                  1
2                  (为空)
3                  1
我怎么查询,都只能查询到最后一个。这个access的指针我也next了。应该是数据库查询的时候,不知道怎么获取查询的结果导致。求帮助。谢谢。
Global $mdb_data_path="1.mdb"  ;数据库文件名
Global $mdb_data_pwd="1"  ;密码
Global $tablename="tbComputer"
Global $mdb_data="ComputerID"




                $conn = ObjCreate("ADODB.Connection")
                $RS = ObjCreate("ADODB.Recordset")
            $conn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&$mdb_data_path&";Jet Oledb:Database Password="&$mdb_data_pwd)
                $RS.ActiveConnection = $conn
                $RS.Open ("Select ComputerID From "&$tablename&" Where Note<>' "" ' " )


                
                
        while Not $RS.eof And Not $RS.bof 
           If @error =1 Then ExitLoop

        $Return = $Rs.Fields(0).value;逐条记录查询,直到查到符合的记录
                
                
                $file = FileOpen("1.txt", 10)
         If $file = -1 Then            ; 检查文件能否打开以便能供写操作
           MsgBox(0, "错误", "不能打开文件.")
           Exit
         EndIf
        FileWrite($file, $Return&@CRLF)
        FileClose($file)
                
        $rs.movenext

         
        WEnd
        
                $rs.close
                $conn.Close
发表于 2011-10-29 21:42:59 | 显示全部楼层
$file = FileOpen("1.txt", 10)
改为$file = FileOpen("1.txt", 9)
0 = 只读模式(默认)
  1 = 写入模式(附加数据到文件尾部)
  2 = 写入模式(先删除之前的内容)
  8 = 如果目标目录不存在就创建(参考注意).
  16 = 强制使用二进制(字节)模式(参考注意)
  32 = 使用 Unicode UTF16 小编码读写模式,读取不会覆盖存在的BOM.
  64 = 使用 Unicode UTF16 大编码读写模式,读取不会覆盖存在的BOM.
  128 = 使用 Unicode UTF8 (带BOM)读写模式,读取不会覆盖存在的BOM.
  256 = 使用 Unicode UTF8 (无BOM)读写模式.
  16384 = 当打开一个文件读取时(文件没有BOM), 使用完整文件 UTF8 检测. 如果没有使用这一模式,则只会检测文件最前端的 UTF8 标志.
文件夹路径必须存在(如果没有指定模式 '8' - 见注释).
 楼主| 发表于 2011-10-29 21:51:05 | 显示全部楼层
本帖最后由 lenlydia 于 2011-10-29 21:54 编辑

回复 2# auto
恩,测试可以的。陷入自己做的陷阱了。老以为是sql语句有错。这个论坛还是不错,对我这样的新手的帖子也不厌其烦,再次谢谢。
不过我还有个问题想问下:就是这个note的字段是文本,数据库设计的时候是允许为0的,默认值没有。
然后我如果以不为空来查询的时候,怎么所有的数据都出来了。是不是有地方写错了。。
 楼主| 发表于 2011-10-29 22:08:21 | 显示全部楼层
回复 3# lenlydia
用了个笨办法已经解决了。把""赋值给一个参数,然后用这个参数去对比。谢谢了。
发表于 2011-10-30 10:03:20 | 显示全部楼层
$file = FileOpen("1.txt", 10)
改为$file = FileOpen("1.txt", 9)
0 = 只读模式(默认)
  1 = 写入模式 ...
auto 发表于 2011-10-29 21:42


正解哈。。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-6 03:02 , Processed in 0.078766 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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