別のポート番号で SQL にアクセスする (クラシック ASP 接続文字列)
-
06-07-2019 - |
質問
ローカル SQL Server 2000 インスタンスに接続する古いクラシック ASP サイトがあります。データベースを新しいボックスに移動していますが、ポートは SQL の標準ではありません (制御不能です)。.NET 接続文字列は、サーバー名/IP の後に ,1999 を追加することでポート番号を適切に処理します。従来の ASP 接続文字列は、同じ構文では機能しません。connectionstrings.com をチェックしましたが、機能するものは見つかりませんでした。
現在の接続文字列 (Global.asa のアプリケーション変数に設定):
Driver={SQL Server};Server=xxx.xxx.xxx.xxx;Database=dbname;Uid=dbuser;Pwd=dbpassword
SQL Native Client をインストールしましたが、それも機能しませんでした (まだ作業中です)
何か案は?
解決
解決策は、MSからSQL Native Driverをインストールしてから、接続文字列を次のように更新することでした。
Driver={SQL Native Client};Server=xxx.xxx.xxx.xxx,port;Database=dbname;Uid=dbuser;Pwd=dbpassword
もともと、ファイアウォールの問題が後で解決されたため、SQL Native Clientで動作させることができませんでした。
他のヒント
もっと情報が必要だと思います。データベースへの接続に何を使用していますか? ODBC? OLE DB? ODBC DSN経由で接続していますか?接続コードはASPコードにありますか、それともVBまたはCOM DLLを介したデータアクセスですか?
cst = "Provider=SQLOLEDB;" & _
"Data Source=<x.x.x.x>,<port number>;" & _
"Initial Catalog=<dbname>;" & _
"Network=DBMSSOCN;" & _
"User Id=<uid>;" & _
"Password=<pwd>"
set conn = CreateObject("ADODB.Connection")
conn.open cst
所属していません StackOverflow