Dim connectionString,sql As String
Dim cn As ADODB.connection
Dim rs As ADODB.recordset
dim cityIDArry() as string
dim provIDArry() as string
connectionstring="Privide=.................."
cn.open(connectionstring)
cn.CursorLocation = adUseClient
:
:
for i=0 to UBound(cityArry)
sql="select 市号,省号 from 市县 where 名称='" & cityArry(i) & "'" 'cityArry()是一个城市名称数组
rs.open sql,cn,1,3
cityIDArry(i)=rs(0)
proIDArry(i)=rs(1)
next i
rs.close
:
:
本来想实现把查询的结果存入数组,但不知rs能否这样用,还是用的不对,运行后出现"BOF或EOF中有一个是真,或者当前记录已被删除,所需的操作要求一个当前的记录",不知哪儿错误,请高手指教,不胜感谢!!!
Dim cn As ADODB.connection
Dim rs As ADODB.recordset
dim cityIDArry() as string
dim provIDArry() as string
connectionstring="Privide=.................."
cn.open(connectionstring)
cn.CursorLocation = adUseClient
:
:
for i=0 to UBound(cityArry)
sql="select 市号,省号 from 市县 where 名称='" & cityArry(i) & "'" 'cityArry()是一个城市名称数组
rs.open sql,cn,1,3
cityIDArry(i)=rs(0)
proIDArry(i)=rs(1)
next i
rs.close
:
:
本来想实现把查询的结果存入数组,但不知rs能否这样用,还是用的不对,运行后出现"BOF或EOF中有一个是真,或者当前记录已被删除,所需的操作要求一个当前的记录",不知哪儿错误,请高手指教,不胜感谢!!!
if rs.eof=false then
cityIDArry(i)=rs(0)
proIDArry(i)=rs(1)
endif2.沒有關聯接就又打開了。
if rs.state<>adstateclosed then rs.close
rs.open sql
记录集的open方法不益在循环中使用,个人认为一般情况下它比较循环读取记录集慢。
是不是可以这样:sql="select 市号,省号 from 市县"
rs.open sql,cn,1,3
for i=0 to UBound(cityArry)
if not rs.bof then rs.movefirst
do while not rs.eof
if rs!名称=cityArry(i) then
cityIDArry(i)=rs(0)
proIDArry(i)=rs(1)
exit do
end if
rs.movenext
loop
next i
rs.close
set rs=nothing仅供参考!