我有一个二维数组,填充数据库中的数据,然后在另一个SQL查询的while循环内使用。对于while循环中的每个项目,我使用for循环检查2d数组内的某些项目。加快页面加载
如何加速这一点,因为while循环内的项目是在1000 - 2000项目内,并需要3 - 4秒来加载网页。
这里是我的二维数组 -
'MultiDimensional Array
Dim permissionsArray()
Dim permissionsCount
connectionstring = obj_ADO.getconnectionstring
Increment = 1
set c = CreateObject("ADODB.Connection")
set r = CreateObject("ADODB.Recordset")
c.open connectionstring
SQL = "select Count(P_Name) as permissionsCount from l_objectpermission inner join A_Permission on op_permissionID = P_permissionID"
r.open SQL, c
permissionsCount = r("permissionsCount")
r.close
c.close
Set objCon = CreateObject("ADODB.Connection")
Set objRS = CreateObject("ADODB.Recordset")
objCon.Open connectionstring
SQL = "select OP_ObjectID, P_Name from l_objectpermission inner join A_Permission on op_permissionID = P_permissionID order by P_Name"
objRS.open SQL, objCon
Redim permissionsArray(2, permissionsCount)
if not objRS.EOF then
objRS.MoveFirst
while not objRS.EOF
permissionsArray(0, increment) = objRS("OP_ObjectID")
permissionsArray(1, increment) = objRS("P_Name")
objRS.MoveNext
Increment = Increment + 1
wend
objRS.close
objCon.close
end if
和我while循环里面 -
Page_ID = objRS("P_PageID")
for i = 0 to (permissionsCount)
if permissionsArray(0, i) = Page_ID then
%>
<li style="height: 2px;">
<%=permissionsArray(1,i)%>
</li>
</br>
<%
end if
next
%>
</div></center></td>
这是一个侧面点,但在我看来,你只需要指数0到1'permissionsArray',即'REDIM permissionsArray(1,permissionsCount)'的尺寸1。 –
出于好奇...结果是什么?你能减少你的页面加载时间吗? – uhleeka