2004.11.05

ワークグループ環境でのADO.NET+SQLServer2000接続

#社内ではちょっと古い話ですが

ワークグループで構成されたDBサーバー(SQLServer2000)とWebサーバー(Windows2000Server(ASP.NET, ADO.NET))の接続をしようとしたところ、

「SQL Serverが見つかりません。」

のエラーが発生しました。
ODBCデータソースや、EnterpriseManagerでは、別マシンから参照できます。
ADO.NETでのSqlProviderによる接続だけがうまくいってないようでした。

ですが、以下の設定を行うことにより、すんなり接続できました。
#市川さんありがとうございます。

スタートメニューから
「Microsoft SQL Server」-「サーバー ネットワーク ユーティリティ」をクリック
「全般」タブの「有効になっているプロトコル」から「名前付きパイプ」を選択し、無効にする。

結果、有効になっているプロトコルは「TCP/IP」のみとなっています。

コメント (1)

呼ばれた気がするので、ついでにここにコメントで残しておきます。

上記のような TCP/IP でなくてはうまくつながらない環境において、サーバーの設定を変えたくないなんらかの理由があって、
クライアント側だけの対処で何とかしなくてはいけない場合もあります。
そんな時は、関係するクライアント全てに設定が必要ではありますが、
 「クライアント ネットワーク ユーティリティ」を呼び出して
規定のネットワークライブラリを『TCP/IP』にしてしまうという方法もあります。
(TCP/IPを順序のもっとも上に上げてしまうとか、TCP/IPだけにしてしまう等)

ところで、Access-ADP を使用している場合、この「クライアント ネットワーク ユーティリティ」に頼らなくても、
Accessの『ファイル』メニューの接続で出てくる「データリンクプロパティ」の『すべて』タブで
  『Network Library』= dbmssocn
を指定すればうまく行きそうなもんなのですが、どうも経験上これだけではちゃんと認識してくれないことが多いようで、
やっぱり「クライアント ネットワーク ユーティリティ」で設定しなくてはいけないみたいです。(謎)

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

photo
nakamura