小さい頃はエラ呼吸

いつのまにやら肺で呼吸をしています。


クラシックASPでODBCを使ってデータベースに接続する

クラシックASPでODBCを経由してデータベースに接続する方法をコードポケット的に書いてみました。

コードポケット

誰に教えられたのでもないのですが、ぼくは冬眠前のリスのようにコード片を溜め込んでいます。

コードを溜め込んでいるディレクトリをぼくは「コードポケット」と名付けていて、コード片を取り出すことを「ポケットからコードを取り出す」と呼んでいます。先日、知り合いが似たようなことを実践していて、その人は「コードスケッチ」と呼んでました。いい名前ですね。
コードポケット - アプリケーションをささっと作るコツ - (ひ)メモ はてなブックマーク - コードポケット - アプリケーションをささっと作るコツ - (ひ)メモ

データベースに接続する

以下の方法は、あらかじめODBCの設定で、データソース名と接続先データベースを指定しておく必要があります。※Windows XP SP3、SQLServer 2000にて検証しました。

  • DSN:データソース名
  • UID:ログインユーザ
  • PWD:パスワード
Dim connect

Set connect = CreateObject("ADODB.Connection")
Call connect.Open("DSN=hoge;UID=xxx;PWD=yyy")
If Err.Number <> 0 Then
  Call Response.Write("接続失敗" & "<br>")
  Call Response.Write(Err.Number & "<br>")
  Call Response.Write(Err.Source & "<br>")
  Call Response.Write(Err.Description & "<br>")
  Response.End
End If

Call Response.Write("接続成功" & "<br>")

' コネクションのクローズ
connect.Close
Set connect = Nothing

トラブルシューティング

データ ソース名および指定された既定のドライバが見つかりません

データソース名が誤っている場合、以下のエラーメッセージが表示されます。

Microsoft OLE DB Provider for ODBC Drivers
[Microsoft][ODBC SQL Server Driver][SQL Server]データ ソース名および指定された既定のドライバが見つかりません。

ユーザー 'xxx' はログインできませんでした。

データベースへのログインID/PWが誤っている場合、以下のエラーメッセージが表示されます。

Microsoft OLE DB Provider for ODBC Drivers
[Microsoft][ODBC SQL Server Driver][SQL Server]ユーザー 'xxx' はログインできませんでした。

参考サイト