ASP网页设计用GetString来进步ASP的速率
asp是基于web的一种编程技术,可以说是cgi的一种。它可以完成以往cgi程序的所有功能,如计数器、留言簿、公告板、聊天室等等。速率很多ASP程序员都有过实行数据库查询,然后将查询了局用HTML表格的情势显现出来的履历吧.一般我们是这么做的:
<%
Createconnection/recordset
Populatedataintorecordsetobject
%>
<TABLE>
<%DoWhilenotrs.EOF%>
<TR>
<TD><%=rs("Field1")%></TD>
<TD><%=rs("Field2")%></TD>
...
</TR>
<%rs.MoveNext
Loop%>
</TABLE>
假如查询了局良多,服务器注释你的ASPscript将消费大批的工夫,由于有很多的Response.Write语句要处置.假如你将输入的全体了局放在一个很长的字符串里(从<TABLE>到</TABLE>),那末服务器只需注释一遍Response.Write语句,速率就会快很多.微软公司里的一些无能的家伙已将设法酿成了实际.(注重,这是一个ADO2.0才有的特征.假如你还在利用ADO1.5话,能够在http://www.microsoft.com/data/download.htm收费下载ADO2.0)
有了GetString办法,我们就能够仅用一个Response.Write来显现一切的输入了,它就象是能判别Recordset是不是为EOF的DO...LOOP轮回.
GetString的用法以下(一切的参数都是可选的):
String=recordset.GetString(StringFormat,NumRows,ColumnDelimiter,RowDelimiter,NullExpr)
要从Recordset的了局里天生HTML表格,我们只需体贴GetString的5个参数中的3个:ColumnDelimiter(分开纪录集的列的HTML代码),RowDelimiter(分开纪录集的行的HTML代码),和NullExpr(以后纪录为空时应天生的HTML代码).就象你鄙人面熟成HTML表格的例子里所看到的那样,每列用<TD>...</TD>分开,每行用<TR>...</TR>分开.来看看例子的代码吧.
<%@LANGUAGE="VBSCRIPT"%>
<%OptionExplicitGoodcodingtechnique
EstablishconnectiontoDB
Dimconn
Setconn=Server.CreateObject("ADODB.Connection")
conn.Open"DSN=Northwind;"
Createarecordset
Dimrs
Setrs=Server.CreateObject("ADODB.Recordset")
rs.Open"SELECT*FROMtable1",conn
Storeouronebigstring
DimstrTable
strTable=rs.GetString(,,"</td><td>","</td></tr><tr><td>","")%>
<HTML>
<BODY>
<TABLE>
<TR><TD>
<%Response.Write(strTable)%>
</TR></TD>
</TABLE>
</BODY>
</HTML>
<%
Cleanup!
rs.Close
Setrs=Nothing
conn.Close
Setconn=Nothing
%>
strTable字符串用于寄存我们从"SELECT*FROMtable1"了局天生的HTML表格的代码.HTML表格的每列之间都将有</td><td>的HTML代码,每行之间的HTML代码是</td></td><tr><td>.GetString办法将输入准确的HTML代码并寄存在strTable中,如许我们只需一行Response.Write即可以输入数据会合的一切纪录.让我们来看个复杂的例子,假定我们的查询了局前往了以下的行和列:
Col1Col2Col3
Row1BobSmith40
Row1EdFrank43
Row1SueVoid42
那末GetString语句前往的字符串将是:
Bob</td><td>Smith</td><td>40</td><td></td></tr><tr><td>Ed...
说假话,这个字符串看上往冗杂而混乱,但它就是我们想要的HTML代码.(注重看,我们在手工誊写的HTML代码中,将<TABLE><TR><TD>放在Response.Write的后面,将</TD></TR></TABLE>放在它的前面.这是由于我们的格局化字符串中其实不含有这些表格头尾所需的字符串.)
CharlesCarroll的文章:http://www.learnasp.com/learn/dbgetstring.asp报告了怎样用GetString来天生一个SELECTbox.我想对你们也是很有匡助的。
Access是一种桌面数据库,只适合数据量少的应用,在处理少量数据和单机访问的数据库时是很好的,效率也很高。但是它的同时访问客户端不能多于4个。access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器iis假死,或者消耗掉服务器的内存导致服务器崩溃。 ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。 那么,ASP.Net有哪些改进呢? 尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。 我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。 另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件) 下面简单介绍一下我学习ASP的方法,希望对想学习ASP的朋友有所帮助... 交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
页:
[1]