最近、ASP の初心者向けに、最も単純なページングは、少量のデータのページングに使用するのに最適です。大量のデータのページングに適しています。
1. Recordset オブジェクトの作成
次のようにコードをコピーします。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 です
。 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、adUseSilentBatch、adCmdText は、adovbs.inc によって定義された
定数です。これらを使用するには、adovbs.inc を現在のディレクトリにコピーし、次のようにコードを
プログラムに含めます。
--#Include File=adovbs.inc-->
2. PrintFielName、PrintFieldValue 関数のコードは次のとおりです。
次のようにコードをコピーします。
<%
Function PrintFieldName(objMyRst)
'パラメータ objMyRst は Recordset オブジェクトです
' Definition
Dim objFld
objMyRst.Fields の各 objFld に対する
Response.Write < tr bgcolor='#CCCCCC'>
Response.Write <td> & objFld.Name & </td>
Next
Response.Write(</tr>)
End Function
Function PrintFieldValue(objMyRst)
'パラメータ objMyRst は Recordset オブジェクトです
' Definition
Dim objFld
Response.Write(<tr >)
For objMyRst.Fields の各 objFld
'Response.Write<td> & objMyRst.Fields(intLoop).value & </td>
Response.Write <td> & objFld.value & </td>
次の
Response.Write(<tr>)
関数終了
%>