※ ChatGPTを利用し、要約された質問です(原文:コネクションオブジェクトについて)
コネクションオブジェクトについて
このQ&Aのポイント
ASPにて顧客管理システムを作成しておりまして、SQL Serverへ接続しております。
複数のページでデータベースを使用するため毎度コネクションの生成をし、設定をし、呼び出して、クローズして、開放して、とかなり無駄なような気がします。
Global.asaにはApplication("○○") = ○○など記述すると書籍に書いておりましたが、データベースへのコネクションの処理などは記述することはできないのでしょうか?データベースへの接続の処理は下記のようになっております。
お世話になります。
ASPにて顧客管理システムを作成しておりまして、SQL Serverへ接続しております。
顧客台帳を作成する際にフォームから登録する処理を書いて参照するページの作成などしておりました。その際に各ページでデータベースへのアクセスをしておりまして、複数のページでデータベースを使用するため毎度コネクションの生成をし、設定をし、呼び出して、クローズして、開放して、とかなり無駄なような気がします。記述はincludeを使用していてそれほどおかしくないのですがGlobal.asaを使用してApplication実行時は常に接続している状態を保ちたく思います。Global.asaにはApplication("○○") = ○○など記述すると書籍に書いておりましたが、データベースへのコネクションの処理などは記述することはできないのでしょうか?データベースへの接続の処理は下記のようになっております。是非ご教授お願いします。
Set objCon = Server.CreateObject("ADODB.Connection")
objCon.ConnectionString = "Provider=SQLOLEDB;" &_
"User ID=○○;" &_
"Password=○○; &_
"DataSource=IPアドレス;" &_
"Initial Catalog=データベース名"
objCon.Open
Set objRS = Server.CreateObject("ADODB.Recordset")
'終了時
objRS.Close
Set objRS = Nothing
objCon.Close
Set objCon = Nothing
お礼
迅速なご返答ありがとうございます。 上記URL拝見させていただきました。 なるほど~って感じですねたしかにApplication実行すると違うユーザがアクセスしてきたときに2重オープンになりかねませんね。勉強になります。 結果としては質問部に記述させていただいた様にインクルードして実行がベターと考えてよろしいのでしょうか?もしほかの方法や、皆様のやり方などありましたら是非ご教授お願いします。