사용 GetString() (대신 여러 Response.Write를의를 사용하는) 당신의 ASP 스크립트 속도를 높이기 위해 방법을.
여러 Response.Write에의
다음 예제는 HTML 테이블에서 데이터베이스 쿼리를 표시하는 방법 중 한 가지 방법을 보여줍니다 :
<html>
<body>
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.recordset")
rs.Open "SELECT Companyname, Contactname FROM Customers", conn
%>
<table border="1" width="100%">
<%do until rs.EOF%>
<tr>
<td><%Response.Write(rs.fields("Companyname"))%></td>
<td><%Response.Write(rs.fields("Contactname"))%></td>
</tr>
<%rs.MoveNext
loop%>
</table>
<%
rs.close
conn.close
set rs = Nothing
set conn = Nothing
%>
</body>
</html>
많은 Response.Write를 명령은 서버에서 처리해야하기 때문에 큰 쿼리의 경우,이 스크립트 처리 시간을 늦출 수 있습니다.
용액 전체를 문자열로 생성하는 것이다 <table> 에 </ 테이블>하고, 다음 출력 - 번만을 Response.Write를 사용.
GetString() 메소드
GetString() 메소드를 사용하면 하나의 Response.Write를 사용하여 문자열을 표시 할 수 있습니다. 또한 DO ... 루프 코드와 레코드 EOF에있는 경우 검사 조건 테스트를 제거합니다.
통사론
str = rs.GetString(format,rows,coldel,rowdel,nullexpr)
레코드의 데이터를 HTML 테이블을 만들려면, 우리는 위의 세 가지 파라미터를 사용해야합니다 (all parameters are optional) :
- COLDEL - 표시되는 HTML 컬럼 분리기로 사용
- rowdel - 표시되는 HTML 연속 분리기로 사용
- nullexpr - 열이 NULL 인 경우 HTML 사용하기
Note: GetString() 메서드는 ADO 2.0 기능입니다. 당신은에서 ADO 2.0을 다운로드 할 수 있습니다 http://www.microsoft.com/data/download.htm .
다음의 예에서 우리는 사용 GetString() 문자열로 레코드를 개최 방법 :
예
<html>
<body>
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.recordset")
rs.Open "SELECT Companyname, Contactname FROM Customers", conn
str=rs.GetString(,,"</td><td>","</td></tr><tr><td>"," ")
%>
<table border="1" width="100%">
<tr>
<td><%Response.Write(str)%></td>
</tr>
</table>
<%
rs.close
conn.close
set rs = Nothing
set conn = Nothing
%>
</body>
</html>
이 STR 변수는 위의 SQL SELECT 문에 의해 반환 된 모든 열과 행의 문자열을 포함합니다. 각 컬럼 HTML 사이 </td><td> 나타나고, 각 행 사이의 HTML은 </td></tr><tr><td> 나타난다. 이것은 우리가 하나의 Response.Write를 함께 필요로하는 정확한 HTML을 생성합니다.