access按条件查询一个字段,然后输出所有符合条件的这个字段的内容。[已解决]
本帖最后由 lenlydia 于 2011-10-29 21:54 编辑数据库:
computer note
1 1
2 (为空)
3 1
我怎么查询,都只能查询到最后一个。这个access的指针我也next了。应该是数据库查询的时候,不知道怎么获取查询的结果导致。求帮助。谢谢。{:face (394):}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 $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' - 见注释). 本帖最后由 lenlydia 于 2011-10-29 21:54 编辑
回复 2# auto
恩,测试可以的。陷入自己做的陷阱了。老以为是sql语句有错。这个论坛还是不错,对我这样的新手的帖子也不厌其烦,再次谢谢。
不过我还有个问题想问下:就是这个note的字段是文本,数据库设计的时候是允许为0的,默认值没有。
然后我如果以不为空来查询的时候,怎么所有的数据都出来了。是不是有地方写错了。。 回复 3# lenlydia
用了个笨办法已经解决了。把""赋值给一个参数,然后用这个参数去对比。谢谢了。 $file = FileOpen("1.txt", 10)
改为$file = FileOpen("1.txt", 9)
0 = 只读模式(默认)
1 = 写入模式 ...
auto 发表于 2011-10-29 21:42 http://www.autoitx.com/images/common/back.gif
正解哈。。
页:
[1]