はじめに
この記事では、ASP プログラミングの最も基本的かつ重要な部分である「データベース ファイル呼び出し」について説明し、ASP プログラミングにおけるデータベース ファイル呼び出しのいくつかのテクニックについて説明します。
ASP の概要
ASP (Active Server Pages) は、Microsoft が 1996 年に開始した Web アプリケーション開発テクノロジです。これは、スクリプト言語、ActiveX コンポーネント、および HTML 言語を組み合わせたもので、Microsoft はこれを「サーバー スクリプト環境」と表現しています。動的でインタラクティブな高性能 Web サーバー アプリケーションを実行します。」その主な機能は、動的で対話型の Web サーバー アプリケーションを生成するための強力な方法またはテクノロジを提供することです。その特徴は、コマンドとスクリプトがサーバーで解釈および実行され、クライアントのブラウザに送信されるコンテンツは単なる標準的な HTML ページであることです。利点は、プログラム設計がシンプルで理解しやすく、便利で高速であることです。 ASP は中国で広く使用されており、かなりの数の動的 Web サイトが ASP テクノロジーを使用しています。
システムが異なれば
ASP データベース ファイルを呼び出す
ために異なるデータベース ドライバーがインストールされる場合がありますが、一般的なサーバー システムは基本的に IIS4.0/5.0 をサポートするため、サーバー システムには少なくとも Microsoft Access Driver、Microsoft ODBC for Oracle、SQL Server などの 3 つのデータベース ドライバーが必要です。 。したがって、サーバー システムは、Access、Oracle、SQL Server などの少なくとも 3 つのデータベースを使用して、ASP Web ページ データベースの設計に取り組むことができます。 Microsoft Access 97/2000 は Microsoft の Office シリーズの一つであり、インターフェースも Office シリーズのソフトウェアに似ているため、基本的に学習に支障はありません。そこで、この記事では初心者の観点から ASP プログラミングに Access データベース ファイルを使用します。 。図 1 に示すように、Access アプリケーションを使用してデータベース ファイル (friend.mdb) を作成します。
図 1
次に、ASP プログラミングでデータベース ファイルを呼び出すには、「コントロール パネル」の「データ ソース (ODBC)」に直接手動で設定する方法と、プログラムを通じてデータベースを呼び出す方法があります。相対パス ファイルを使用する場合、この方法は追加の構成を行わずに任意のサーバーに適用できます。最初の方法はより簡単で安全であり、この記事では 2 番目の方法について説明します。
ASP プログラミングでデータベース ファイル内のテーブル レコードを読み取る一般的なメソッドを以下に示します。
01: <HTML><BODY>
02: <!--#include file="adovbs.inc"-->
03:<%
04: 「ASP の Connection オブジェクトを使用してデータベースを開きます。データベース ファイルは上の図の <Friend.mdb> です。」
05: 薄暗いobjConn
06: objConn=Server.CreateObject("ADODB.Connection") を設定します
07: objConn.ConnectionString="プロバイダ=Microsoft.Jet.OLEDB.4.0;"
08: "データ ソース = & Server.MapPath("Friend.mdb")
09: objConn.Open
10: 「データ」テーブルのレコードを読み取り、レコード セット オブジェクトに保存します。
11: 薄暗いobjRS
12: objRS=Server.CreateObject("ADODB.Recordset") を設定します。
13: ObjRS.Open "データ"、objConn、adOpenKeyset、adLockOptimistic、adCmdTable
14: '現在のポインタが指しているレコードをブラウザ上に表示します
15: objRS でない場合。
16: Response.Write "番号:"&objRS("番号")& "<BR>"
17: 応答「名前:」&objRS("名前")&「<BR>」と書きます。
18: 応答「性別:」&objRS("性別")&「<BR>」
19:その他
20: Response.Write "データベースの終わりに達し、一致するレコードがすべて表示されました"
21: エンドイフ
22: 'データベース接続を閉じ、オブジェクト インスタンスを解放します
23: オブジェRSを閉じる
24: objRS=Nothing を設定します
25: ObjConn.Close
26: objConn=Nothing を設定します
27:%>
28: </BODY></HTML>
上記のコードは、ASP プログラミングで Access データベース ファイルを開くための設計手順です。
データベース ファイルを呼び出すためのヒント
(1) 実際、どの Access データベースに切り替えても、データベース接続を開いてテーブル レコードを読み取る手順は同じです。変数はデータベース ファイルの名前とテーブルの名前です。したがって、上記のプログラムの 3 行目から 13 行目を関数の形式に書き換えて、ADOFunctions.asp のようなファイルに保存することができます。将来データベース ファイルを開く場合は、ADOFunctions.asp ファイルを含めます。コードは次のとおりです:
<%
ディムオブジェクトコン
'変数 Filename はデータベース ファイル名、変数 Table Name はテーブル名 Function GetRecordset(FileName,TableName)
'ASP の Connection オブジェクトを使用してデータベースを開きます Set objConn=Server.CreateObject("ADODB.Connection")
objConn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" &_
"データ ソース = & Server.MapPath("ファイル名")
objConn.Open
'テーブルのレコードを読み取り、レコードセットオブジェクト「objRS」に格納します
薄暗いobjRS
Set objRS=Server.CreateObject("ADODB.Recordset")
ObjRS.Open テーブル名、objConn、adOpenKeyset、adLockOptimistic、adCmdTable
終了機能
%>
上記のコードからわかるように、関数名は GetRecordSet で、その戻り値はテーブル レコードを格納するレコード セット オブジェクト インスタンスです。ファイル名は ADOFunctions.asp です。これで、このファイルを使用してデータベース ファイルのレコードを読み取ることができます。たとえば、データベースを読み取るプログラミングは次のように簡略化できます。
<HTML> <BODY>
<! --#Include file="adovbs.inc" -->
<! --#include file="ADOFunctions.asp"-->
<%
' GetRecordset 関数を呼び出してレコード セット オブジェクト インスタンスを取得し、それを変数 objRS に割り当てます。
薄暗いobjRS
Set objRS=GetRecordset("Friend.mdb","data")
'現在のポインタが指すレコードをブラウザに表示If Not objRS.EOF then
Response.Write "番号:"&objRS("番号")& "<BR>"
Response.Write "名前:"&objRS("名前")&"<BR>"
Response.Write "性別:"&objRS("性別")&"<BR>"
それ以外
Response.Write "データベースの終わりに達し、一致するレコードがすべて表示されました"
終了の場合
'データベース接続を閉じ、オブジェクト インスタンス ObjRS を解放します。
objRS=Nothing を設定します
ObjConn.Close
objConn=Nothing を設定します
%>
</BODY></HTML>
したがって、このコード Set objRS=GetRecordset("Friend.mdb", "data") 内でデータベース名とテーブル名を変更すれば、どの Access データベース ファイルでも呼び出すことができます。さらに、後続のデータベースの各テーブルのフィールド名は一致する必要があることに注意する必要があります。
(2) さらに、どの Access データベースに切り替えても、データベース接続を開いてテーブル レコードをフィルタリングする手順は同じです。変数には SQL ステートメント (「SELECT * FROM data」など)、名前が含まれます。データベース ファイルの名前とテーブルの名前。したがって、同様に、これら 3 つの変数を関数のパラメーターとして使用し、GetSQLRecordset 関数を作成し、それを ADOSQLFunctions.asp という名前のファイルとして保存することができます。今後使用する場合は、このファイルを次の場所に含めます。この関数はデータベース接続を開き、テーブル レコードをフィルタリングします。この関数の戻り値には、SQL ステートメントに準拠するレコード セット オブジェクト インスタンスが格納されます。
コードは次のとおりです:
<%
ディムオブジェクトコン
Dim GetSQLRecordset
関数 GetSQLRecordset(strSQL,ファイル名,テーブル名)
'ASP の Connection オブジェクトを使用してデータベースを開きます
Set objConn=Server.CreateObject("ADODB.Connection")
objConn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;" &_
"データ ソース = & Server.MapPath("ファイル名")
objConn.Open
' SQL ステートメントに一致するレコードをテーブルから読み取り、レコード セット オブジェクトに格納します
Set GetSQLRecordset=Server.CreateObject("ADODB.Recordset")
GetSQLRecordset.Open_ strSQL、objConn、adOpenKeyset、adLockOptimistic、adCmdText
終了機能
%>
上記のコードの関数名は GetSQLRecordset、ファイル名は ADOSQLFunctions.asp です。
これで、このファイルを使用して Access データベースへの接続を呼び出し、同時にテーブル レコードをフィルター処理できるようになります。 Friend.mdb ファイルを例として、テーブル データ内のすべてのレコードをリストします。プログラム コードは次のとおりです。
<HTML> <BODY>
<!--#include file="adovbs.inc"-->
<!--#include file="ADOSQLFunctions.asp"-->
<%
薄暗いobjRS
Set objRS=GetSQLRecordset("データから番号、名前、性別を選択", "Friend.mdb", "データ")
objRS.EOF ではないときに実行します
Response.Write "番号:"&objRS("番号")&"<BR>"
Response.Write "名前:"&objRS("名前")&"<BR>"
Response.Write "性別:"&objRS("性別")&"<BR>"
ループ
objRS.Close
objRS=Nothing を設定します
ObjConn.Close
objConn=Nothing を設定します
%>
</BODY></HTML>
概要
ASP プログラミングでは、関数を上手に利用することでプログラム コードをシンプルかつ明確にすることができ、同時に読み取り構造の保守も容易になります。反復的で複雑なコード。上記の状況と同様に、単にデータベースに接続するだけの場合は、最初の状況を使用し、ファイル ADORecordset.asp を含めます。データベース内の特定のテーブルのレコードをフィルターする場合、または他の SQL ステートメント操作を使用する場合は、2 番目の状況を使用します。この場合は、ADOSQLRecordset.asp ファイルをロードするだけです。