日期:2014-05-17  浏览次数:20909 次

一个数组,想实现将数组里的值做为条件查找数据库,如何做到?
有一个数组,比如array(),想实现将数组里的值做为条件查找数据库,并且将数组里所有的值查到的记录存在一个记录集里显示,如何才能做到呢?怎样使用循环?怎么样在一个记录集里保存,并且只打开一个记录集?最好详细一点说明哦。
请教各位高手!

------解决方案--------------------
dim new_array(5)
'在此给数组赋值
sql= "select * from 表 where 字段 in ( ' "&new_array(0)& " ' "
for i=1 to ubound(new_array)
sql=sql& ", ' "&new_array(i)& " ' "
next
sql=sql& ") "
'我觉得主要是把sql语句拼接好就能达到你的要求了
'打开数据库连接

------解决方案--------------------
例如arrList是这个数组,可以使用NextRecordset方法解决:

dim strSQl
for i=0 to Ubound(arrList)
if strSQl = " " then
strSQl = "Select * form yTbl where id= " & arrList(i)
else
strSQl =strSQl & "; " & "Select * form yTbl where id= " & arrList(i)
end if
next

'Set Rs=conn.execute(strSQl) '第一个记录集,就是条件为arrList(0)的记录集
'处理条件为arrList(0)的记录集

'set Rs=Rs.NextRecordset '第二个记录集,就是条件为arrList(1)的记录集
' 处理条件为arrList(1)的记录集
i=0
do while i <= Ubound(arrList)
'处理条件为arrList(0)的记录集 Rs
set Rs=Rs.NextRecordset '记录集下移
i=i+1
loop