如何快速获取记录集中的某个字段的数据组合成的数组
比如
[表]
ID 姓名 性别
我想把记录集的ID 组成一个数组 供以后的程序使用
我目前的代码是这样的: 会不会很土啊???
sql="select ID from 表 where ...."
rs.open.........
do while not rs.eof
itemid=rs("ID")
if idstring="" then
idstring=itemid
else
idstring=idstring&"|"&itemid
end if
rs.movenext
loop
shuzu=split(idstring,"|") '我的目的是得到这个数组
有没有更好的方法?
------解决方案--------------------
直接给数组不可以吗
------解决方案--------------------
但没必要拼成字符串再分隔成数组呀,直接装进数组不得了
------解决方案--------------------
good!!!!!!!!!!
------解决方案--------------------
楼主,也有别的方法,就是可以试试把sql文改一下,比如说你用的数据库是SQL server的话,可以用For XML Path()这种语法,
查出来的数据像这样
ID
----------------------
001,002,003,004
----------------------
然后在split(',').
------解决方案--------------------
不拼成字符串,动态增加数组长度。?
re:
对呀,ReDim Preserve MyArray(增加元素数量),你的不用这么麻烦,只要结果集出来了,就已经知道有多少元素了:
dim myArray(rs.recordCount)
dim i:i=0
do while not rs.eof
myArray(i)=rs("ID")
i=i+1
rs.movenext
loop
另外, 不管怎样 都是要遍历记录集?
re:
对,结果集是一个对象实例,array在vbscript只是一个结构,两者不能划等号
------解决方案--------------------