최근에 ASP 페이징에 대해 다른 사람들에게 교육했습니다. ASP를 처음 접하는 초보자에게 가장 간단한 페이징 기술은 주로 소량의 데이터를 페이징하는 데 사용되는 것입니다. 대량의 데이터를 페이징하는 데 적합합니다.
1. 레코드세트 객체 생성
다음과 같이 코드를 복사합니다.Dim objMyRst
Set objMyRst=Server.CreateObject(ADODB.Recordset)
objMyRst.CursorLocation=adUseClientBatch '클라이언트는
objMyRst.CursorType=adOpenStatic을 일괄 처리할 수 있습니다.' 참고: Recordset 개체는 정적 유형일
수 없습니다
.Set objMyRst=Connection과 함께 사용됩니다. strSQL 문은 생성된 Recordset 개체가 adOpenFowardOnly이고 레코드 집합 페이징
2를 지원하지 않기 때문에 생성됩니다. Recordset 개체를 열고
다음과 같이 코드를 복사합니다.
Dim strSql
strSql=select * from ietable
objMyRst.Oepn strSql,ActiveConnection,,,adCmdText
3. Recordset의 PageSize 속성을 설정
하고 다음과 같이 코드를 복사합니다.
objMyRst.PageSize=20.
기본 PageSize는 10입니다.
4. Recordset의 AbsolutePage 속성을
다음과 같이 설정합니다.
다음과 같이 코드를 복사합니다.
Dim intCurrentPage
intCurrentPage=1
objMyRst.AbsolutePage=intCurrentPage
AbsolutePage는 Recordset 개체
5의 PageCount 값에 1입니다. 데이터 복사 코드를 표시하는
코드는다음과 같습니다.
Response.Write(<table>)
PrintFieldName(objMyRst)
For i=1 To objMyRst.PageSize
PrintFieldValue(objMyRst)
objMyRst.MoveNext
If objMyRst.Eof Then Exit For
Next
Response.Write( </table> )
설명:
1. adOpenStatic, adUseCilentBatch, adCmdText는 adovbs.inc에 의해 정의된 상수입니다. 이를 사용하려면 adovbs.inc를 현재 디렉터리에 복사하고
다음
과 같이 코드를 복사합니다
.--#Include File=adovbs.inc-->
2. PrintFielName, PrintFieldValue 함수의 코드는 다음과 같습니다.
다음과 같이 코드를 복사합니다.
<%
Function PrintFieldName(objMyRst)
'The 매개 변수 objMyRst는 Recordset 개체입니다.
' 정의
Dim objFld
Response.Write < tr bgcolor='#CCCCCC'>
objMyRst.Fields의 각 objFld에 대해
Response.Write <td> & objFld.Name & </td>
Next
Response.Write(</tr>)
End Function
Function PrintFieldValue(objMyRst)
' 매개변수 objMyRst는 Recordset 객체입니다
. ' 정의
Dim objFld
Response.Write(<tr >)
For 각 objFld는 objMyRst.Fields
'Response.Write<td> & objMyRst.Fields(intLoop).value & </td>
Response.Write <td> & objFld.value & </td>
다음
Response.Write(<tr>)
끝 함수
%>