GetRows ---> ž®†recordset记录集æå–到一个二¾l´æ•°¾l„ä¸åQŒæˆ‘们对recordsetæ•°æ®çš„行为就转移到该数组åQŒå¯ä»¥æ—©æ—©çš„æ–å¼€¾Uªå½•集,ä¸ç”¨å†ä‹Éç”¨å…ƒæ•°æ®æ“作åQŒrs.movnext, while not rs.eof½{‰å¯ä»¥çœæŽ?/p>
NextRecordset ----> ž®±æ˜¯åœ¨ä¸€‹Æ¡æäº¤å¤šä¸ªæŸ¥è¯¢ï¼Œå½¢æˆå¤šä¸ªreordset¾l“果集的情况下,æä¾›ä¸€ä¸ªç¦»å¼€å½“å‰å·¥ä½œçš„recordsetåQŒè{¿UÕdˆ°½W¬äºŒä¸ªrecordset的方法ï¼
ä¸»è¦æ˜¯ç”¨åœ¨å¤šä¸ªSELECTå½¢æˆçš„结果集的情å†?/p>
½CÞZ¾‹å¦‚下åQ?/p>
dim SQL,Rs,arrA,arrB,rowsA,rowsB
''======æå–æ•°æ®åº“库记录====
åQˆadodb.connection 的连接部分çœç•?å‡å®šCONN.open CONNstråQ?br />SQL=" select Ca1,Ca2,Ca3,Ca4 from TableA " ''---------------SELECTa
SQL=SQL&" select Cb1,Cb2,Cb3,Cb4,Cb5 from TableB " ''-------------SELECTb
Set Rs=conn.execute(SQL)Â
''执行¾l“æžœž®†æœ‰ä¸¤ä¸ªselect 的结果集åQŒå½“å‰ç¬¬ä¸€ä¸ªselectçš„recordset处于‹È€‹zÈŠ¶æ€Â?/p>
arrA=rs.GetRows ''----------å–å¾—SElECTa Recordset的二¾l´æ•°¾l?/p>
set rs=rs.NextRecordsetÂ
''------------最关键的一æ¥ï¼Œä½¿ç”¨Nextrecordset‹È€‹zÖM¸‹ä¸€ä¸ªrecordset
arrB=rs.GetRows ''----------冿¬¡å–å¾—½W¬äºŒä¸ªSElECTb Recordset的二¾l´æ•°¾l„Â?/p>
Rs.close
set rs=nothing ''---------ž®½æ—©é‡Šæ”¾æ•°æ®åº“对象,关é—记录é›?br />CONN.close
set CONN=Nothing
˜q™æ ·åQŒæˆ‘们所有关于数æ®åº“的数æ®å¹²òq²å‡€å‡€çš„æå–完æˆï¼Œç”¨æœ€æ—©çš„æ—‰™—´é‡Šæ”¾æ•°æ®åº“资æºÂ?br />''-----------//
''========用å–å¾—çš„arrA arrB˜q›è¡Œ™åµé¢å¤„ç†,昄¡¤ºæ•°æ®¾l“æžœ======
''注æ„åQŒarrA=GetRows åŽå¾—到的数组åQŒç¬¬ä¸€¾l´æ˜¯ä»£è¡¨åˆ—,½W¬äºŒ¾l´ä»£è¡¨è¡Œ
rowsA=ubound(arrA,2) ''----æå–arrAçš„ç¬¬äºŒç»´ä¸‹æ ‡åQŒç›¸å½“于å–å¾—recordset 的记录行æ•?br />rowsB=ubound(arrB,2) ''-----åŒä¸ŠåQŒæå–arrBçš„ç¬¬äºŒç»´ä¸‹æ ‡Â
''åšæ•°æ®åó@环:(x¨¬)
''½W¬ä¸€ä¸ªselect表的循环
response.write "<table>"
For i=0 to rowsA
response.write "<tr>
response.write "<td>"&arrA(i,0)&"</td>" ''tableA.Ca1Â
response.write "<td>"&arrA(i,1)&"</td>" ''tableA.Ca2Â
response.write "<td>"&arrA(i,2)&"</td>" ''tableA.Ca3Â
response.write "<td>"&arrA(i,3)&"</td>" ''tableA.Ca4Â
response.write "</tr>"
Next
response.write "</table>
''½W¬äºŒä¸ªselect表åó@çŽ?br />response.write "<table>"
For i=0 to rowsB
response.write "<tr>
response.write "<td>"&arrB(i,0)&"</td>" ''tableB.Cb1Â
response.write "<td>"&arrB(i,1)&"</td>" ''tableB.Cb2Â
response.write "<td>"&arrB(i,2)&"</td>" ''tableB.Cb3Â
response.write "<td>"&arrB(i,3)&"</td>" ''tableB.Cb4Â
response.write "<td>"&arrB(i,4)&"</td>" ''tableB.Cb5Â
response.write "</tr>"
Next
response.write "</table>
''--------OVER
REM ''============ž®ç»“========
˜q™æ ·çš„ç»“æžœï¼Œå†æ¸…楚丘q‡ï¼
åQ?åQ‰ä‹É用Nextrecordset,å¯ä»¥å¤„ç†å¤šä¸ªselectè¯å¥ä¸€‹Æ¡å‘é€åÅžæˆçš„¾l“果集,å‡å°‘¾|‘络‹¹é‡åQŒå¿…å®šåŠ å¿«é€Ÿåº¦åQ?br />ä¸ä‹É用NextRecordset 则会(x¨¬)˜q™æ ·æ“作åQ?br />SQL="select Ca1,Ca2,Ca3, Ca4 From TableA "
set Rs=CONN.execute (SQL)
SQL=" select Cb1,Cb2,Cb3,Cb4,Cb5 from TableB "
Set Rs=CONN.execute (SQL)
åQ?åQ‰ä‹É用GetRowsž®†è®°å½•集æå–到数¾l„ä¸åQˆæ”¾åˆ°å†…å˜ï¼Œæ‰€ä»¥è¦æ±‚记录集ä¸è¦‹¹·å¤§å•¦ï¼‰(j¨ª)
用内å˜çš„æ•°ç»„工作åQŒè€Œä¸”çœæŽ‰EOF,movenext½{‰çš„判æ–åQŒè°æ›´å¿«åQ自ä¸å¿…è¯ß_(d¨¢)¼
åQ?åQ‰æœ€æœ€ä¸»è¦çš„,我们利用上二者,一‹Æ¡æ€§å°†æ‰€æœ‰çš„æ•°æ®æå®ŒåQŒå¿«é€Ÿæ–开数æ®åº“连接和摧æ¯å»ºç«‹recordsetæ•°æ®åº“对象,大大å‡å°‘¾|‘络‹¹é‡åQæ€§èƒ½è‡ªç„¶è¦æé«˜å¾ˆå¤šï¼
Â