SAK 図書館
ASP VB Script 基礎実地編8 - データベース問い合わせ、スクロールへのヒント
■データベース問い合わせ - スクロール制御へのヒント
・実際のデータベース照会では、抽出条件やソート順の指定など、複雑な問い
合わせインターフェースを実装しなければなりません。
できれば、シンプルな条件指定での問い合わせを実現する方が良いです。
汎用的なロジック開発には時間がかかります。
ただ、自分流の汎用ロジックを開発しておくと、何かと便利です。
私も問い合わせスタイルの汎用スタイル開発には時間がかかりました。
・今回の実地編では、レコードセットをスクロールさせていません。
これも汎用ロジックを開発することが必要です。
実際のデータベースでは、何十万件と言うデータを扱います。
スクロール制御を実装しないと使いものになりません。
・スクロール制御を行うには、レコードセットをセッション変数に格納して、
クエリを維持する必要があります。
このとき、セッション変数名が .asp のプログラム単位にユニークになるよ
うにしなければなりません。
私は、ASP のプログラム名 + rs でセッション変数名にしています。
session("s3cn_ado_rs_" & pgmname) みたいな感じです。
・レコードセットをセッション変数に格納した場合、今回の実地編で必ず実行
している rs.close を取り除かないとダメです。
クエリを発行するときにレコードセットが保持されていればクローズすると
言うロジックにすると良いでしょう。
・レコードセットを前方、後方にアクセスするにはデータベースカーソルに
適切なものを選択しなければなりません。
今回の実地編ではスクロールはさせていませんが、スクロール制御のために
const dcr = 3 '** adUseClient を使用しています。
ADO は、adUseClient でないと前方参照できません。
・スクロール制御には、現在のデータベースカーソル位置をブックマークで
取得すると便利です。
但し、マルチユーザのシステムでは、照会中にそのブックマーク位置の
レコードが削除されて無効になる可能性があります。
データベースカーソルのエラー対策など、きちんとやる必要があります。
・以上を参考にスクロール型問い合わせデータベース照会を開発下さい。
■ASP VB Script 基礎実地編資料
■ASP VB Script 基礎編資料
■ASP VB Script ADO + SQL 応用編資料
■ASP VB Script oo4o + SQL 応用編資料
■SQL 基礎編資料
■SQL 基礎実地編資料
■SQL チューニング編資料
■Oracle PL/SQL 編資料
■PostgreSQL 編、JAVA Servlet、JSP 編資料
■MySQL 編資料