国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > ASP > 正文

把RS.GetRows看得更清楚

2020-07-27 13:09:46
字體:
來源:轉載
供稿:網友
用過Rs.GetRow的兄弟都知道Rs.GetRow可以更有效率地獲取小容量數據(不適合大容量數據,尤其涉及大對象的時候,容易暴掉,我就爆過一次),PuterJam應用得不錯的說。

但是Rs.GetRow返回的是一個二維數組,我們經常不知道哪段對哪段。這個很麻煩,于是編了一小段程序方便調試用:


    Dim ds
    Set objRS=objConn.Execute("SELECT * FROM [blog_Upload] WHERE ([ul_Quote] LIKE '%" & CStr(ID) & "%') ")
        ds=objRS.GetRows
    objRS.Close()
    Set objRS=Nothing

' 建立一個表格
Response.Write "Written By Sipo(www.dc9.cn)<table align=""center"" border=""1"">"
Response.Write vbcrlf
Response.Write "<tr><td></td>"
For j = 0 To UBound(ds, 1)
Response.Write "<td>ds("&j&",X)</td>"
Next
Response.Write "</tr>"
' 每一行
  For i = 0 To UBound(ds, 2)
    Response.Write "<tr><td>ds(X,"&i&")</td>"& vbcrlf
    ' 每一列
    For j = 0 To UBound(ds, 1)
      Response.Write "<td>"
      If IsNull(ds(j, i)) Then 
      Response.Write "Null"
      Else
      Response.Write ds(j, i)
      End If
      Response.Write "<br>"
      Response.Write "<b>ds("&j&","&i&")</b>"
      Response.Write "</td>"
    Next

    Response.Write "</tr>" & vbcrlf
  Next

  Response.end






--------------------------------------------------------------------------------

獻給菜鳥們:
關于GetRows的小資料:


ADO也提供更有效率方法來取得數據。GetRows 方法傳回一個二維的數組變量,每一行對應Recordset中的一筆記錄,且每一列對應到記錄中的字段。此方法的語法如下: 

varArray = rs.GetRows([Rows], [Start], [Fields]) 

Rows 是要讀取記錄的數量;如果想要取得Recordset所有記錄,可用-1或省略此參數。Start 是指出第一個被讀取記錄的書簽;也可以是下列列舉常數中的一個:0-adBookmarkCurrent(目前記錄)、1-adBookmarkFirst(第一筆記錄)、或2-adBookmarkLast(最后記錄)。 

Fields 是可選擇的字段名稱數組,其用來限制要讀取的數據量。(也可指定單一字段名稱、單一字段索引、或者一個字段索引數組)。當設定 Rows 為少于Recordset記錄筆數時,第一筆未讀取的記錄變成現行記錄。若省略 Rows 參數或設定為-1-adGetRowsRest或大于未讀取的筆數時,GetRows 方法會讀取所有記錄并讓Recordset在EOF狀態,而不會產生任何錯誤。 

當處理目的變量數組的數據時,應該記得數據儲存方式是有點相反的感覺:數組中第一維定義Recordset的字段(數據行),第二維定義Recordset的數據列。

GetRows 方法通常比一次讀一筆記錄的循環要來得快些,但使用這方法時,必須確定Recordset未包含太多記錄;否則,會很容易以一個非常大的變量數組來填滿所有內存。基于相同的原因,得小心不要包括任何BLOB(Binary Large Object)或CLOB(Character Large Object)字段;若如此做的化,應用程序一定會爆掉,特別是對于較大的Recordset而言。最后,記住此方法傳回的變量數組是以0為基底的;傳回記錄的筆數是UBound(values,2)+1,傳回字段數是UBound(value, 1)+1。 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 托克托县| 铜梁县| 漳平市| 临江市| 扎兰屯市| 滕州市| 全南县| 四子王旗| 韶关市| 中江县| 昔阳县| 涟源市| 淅川县| 汉寿县| 靖江市| 绥宁县| 锡林浩特市| 九龙城区| 宣武区| 澄江县| 沅陵县| 托克逊县| 普宁市| 佛坪县| 琼海市| 唐河县| 合江县| 马龙县| 祁连县| 杨浦区| 城口县| 海盐县| 沅陵县| 安乡县| 晋州市| 金乡县| 张家川| 扎鲁特旗| 柳林县| 甘南县| 象山县|