|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
减少客户内IT专业人才缺乏带来的影响。ASP的客户员工利用浏览器进入相关的应用软件,简单易用,无需专业技术支持。教程|速率|功能|优化很多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>放在它的前面.这是由于我们的格局化字符串中其实不含有这些表格头尾所需的字符串.)由于ASP还是一种Script语言所没除了大量使用组件外,没有办法提高其工作效率。它必须面对即时编绎的时间考验,同时我们还不知其背后的组件会是一个什么样的状况; |
|