|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
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以上才有的特征.假如你还在利用之前版本的话,请晋级到最新版)
有了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最佳的能力。可是我却认为正是Windows限制了ASP,ASP的概念本就是为一个能让系统运行于一个大的多样化环境而设计的; |
|