若相依 发表于 2015-1-16 22:17:59

ASP网页编程之让我们把RS.GetRows看得更分明

问题是他们究竟是喜欢他们是使用软件时,速度快还是速度慢好.(当然在3秒以内).无论是他们输入资料时,查找资料时,分析资料时.用过Rs.GetRow的兄弟都晓得Rs.GetRow能够更无效率地猎取小容量数据(不合适年夜容量数据,特别触及年夜工具的时分,简单暴失落,我就爆过一次),PuterJam使用得不错的说。

可是Rs.GetRow前往的是一个二维数组,我们常常不晓得哪段对哪段。这个很贫苦,因而编了一小段程序便利调试用:

Dimds
SetobjRS=objConn.Execute("SELECT*FROMWHERE(LIKE%"&CStr(ID)&"%)")
ds=objRS.GetRows
objRS.Close()
SetobjRS=Nothing

创建一个表格
Response.Write"WrittenBySipo(www.dc9.cn)<tablealign=""center""border=""1"">"
Response.Writevbcrlf
Response.Write"<tr><td></td>"
Forj=0ToUBound(ds,1)
Response.Write"<td>ds("&j&",X)</td>"
Next
Response.Write"</tr>"
每行
Fori=0ToUBound(ds,2)
Response.Write"<tr><td>ds(X,"&i&")</td>"&vbcrlf
每列
Forj=0ToUBound(ds,1)
Response.Write"<td>"
IfIsNull(ds(j,i))Then
Response.Write"Null"
Else
Response.Writeds(j,i)
EndIf
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是要读取纪录的数目;假如想要获得Recordset一切纪录,可用-1或省略此参数。Start是指出第一个被读取纪录的书签;也能够是以下枚举常数中的一个:0-adBookmarkCurrent(今朝纪录)、1-adBookmarkFirst(第一条记录)、或2-adBookmarkLast(最初纪录)。

Fields是可选择的字段称号数组,其用来限定要读取的数据量。(也可指订单一字段称号、单一字段索引、大概一个字段索引数组)。当设定Rows为少于Recordset纪录笔数时,第一笔未读取的纪录酿成现行纪录。若省略Rows参数或设定为-1-adGetRowsRest或年夜于未读取的笔数时,GetRows办法会读取一切纪录并让Recordset在EOF形态,而不会发生任何毛病。

当处置目标变量数组的数据时,应当记得数据贮存体例是有点相反的感到:数组中第一维界说Recordset的字段(数据行),第二维界说Recordset的数据列。

GetRows办法一般比一次读一条记录的轮回要来得快些,但利用这办法时,必需断定Recordset未包括太多纪录;不然,会很简单以一个十分年夜的变量数组来填满一切内存。基于不异的缘故原由,得当心不要包含任何BLOB(BinaryLargeObject)或CLOB(CharacterLargeObject)字段;若云云做的化,使用程序必定会爆失落,出格是关于较年夜的Recordset而言。最初,记着此办法传回的变量数组是以0为基底的;传回纪录的笔数是UBound(values,2)+1,传回字段数是UBound(value,1)+1。
因为现在数据库都使用标准的SQL语言对数据库进行管理,所以如果是标准SQL语言,两者基本上都可以通用的。SQLServer还有更多的扩展,可以用存储过程,数据库大小无极限限制。

再见西城 发表于 2015-1-18 08:49:42

学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:

admin 发表于 2015-1-21 15:18:02

如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:

山那边是海 发表于 2015-1-30 20:17:46

不能只是将它停留在纸上谈兵的程度上。

冷月葬花魂 发表于 2015-2-6 15:52:13

Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名")

小魔女 发表于 2015-2-16 23:22:57

用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。

金色的骷髅 发表于 2015-3-5 12:29:53

另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件)

谁可相欹 发表于 2015-3-12 07:02:26

弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。

精灵巫婆 发表于 2015-3-19 18:35:22

封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。
页: [1]
查看完整版本: ASP网页编程之让我们把RS.GetRows看得更分明