- - PR -
.netからMSDEの接続で、「SQL Server が存在しないか、アクセスが拒否されました」エラー
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-12-27 12:21
ローカルにMSDEをインストールし、osqlからテーブルを作成し、データも入れました。
.netからSql Server認証で接続すると、タイトルのようなエラーになります。 試しに、ODBCから接続してみると、osqlで接続したのと同じ、ユーザ、パスワードで接続できました。 OSは、Win XP Pro SP2、 MSDEは、SP3 8.00.760です。 以下を参照しましたが、解決できませんでした。 何か、こころあたりがありましたら、何でもかまいませんので、アドバイスいただけるとうれしいです。 よろしくお願いします。 名前付きパイプ サーバー ネットワーク ライブラリを使用するように 構成されている、Windows XP Service Pack 2 を実行するコンピュータ上の SQL Server のインスタンスに接続できないことがある http://support.microsoft.com/kb/839269/ エラー メッセージ "SQL Server が存在しないか、アクセスが拒否されました" の原因 http://support.microsoft.com/kb/328306/ |
|
投稿日時: 2005-12-27 12:41
とりあえず失敗する SqlConnection の ConnectionString と成功する Odbc の ConnectionString を挙げてもらえますか。[ メッセージ編集済み 編集者: ya 編集日時 2005-12-27 12:44 ] |
|
投稿日時: 2005-12-27 13:22
早速のお返事ありがとうございます。
ConnectionStringとは、これのことでしょうか? ConnectionString = _ "data source=" & <ローカルのマシン名> & ";" & _ "initial catalog=" & <データベース名> & ";" & _ "user id=" & "sa" & ";" & _ "password=" & "pass" ODBCは、ツール(odbcad32.exe)から接続しているため、わかりません。 上記と同じ、ID、パスワードで、 データベースも、 「規定のデータベースを以下のものに変更する」を、上記と 同じデータベース名にして、接続できます。 質問頂いたことに回答できていますでしょうか? |
|
投稿日時: 2005-12-27 13:30
MSDEのセットアップ時に、認証モードが決定されてしまいます。
SECURITYMODEパラメータは正しく指定されたでしょうか? SECURITYMODEパラメータの省略時のデフォルトはWindows認証モードになります。 以下、http://www.atmarkit.co.jp/fwin2k/win2ktips/583msde/msde.htmlより抜粋 SECURITYMODE=SQL 認証モードを従来のSQL Server(MSDE)のデフォルトである混在モードにする。混在モードでは、SQL Server認証とWindows認証の両方が有効になる。省略時のデフォルトはWindows認証モードとなり、Windowsのアカウントのみで認証が行われる。システム管理者アカウントsaは、SQL Server認証でのみ有効なアカウント ================================================================= 認証方法を変更するにはレジストリをいじるしかないので、下記を参照ください http://frog.raindrop.jp/knowledge/archives/000043.html |
|
投稿日時: 2005-12-27 13:45
ありがとうございます。
認証モードは、混合モードにしてあるのです。 念のため、レジストリで、確認しましたが、2になっていました。。 せっかく書き込みしていただいたのに、ごめんなさい。。 |
|
投稿日時: 2005-12-27 13:52
osql -S ローカルのマシン名 -U sa
で繋がるでしょうか? ConnectionString = "data source=(local);" & _ で繋がるでしょうか? MSDE2000Aのデフォルトインストールだとマシン名やIPアドレスで つながらないです。 ReadmeのDISABLENETWORKPROTOCOLS |
|
投稿日時: 2005-12-27 14:24
ありがとうございます。
はい。OKです。 saで、パスワードを設定したので、パスワードを要求されますが、 接続できます。。 |
|
投稿日時: 2005-12-27 14:51
ConnectionStringにユーザID、パスワードを指定する場合は、
明示的に”Persist Security Info” を true に設定する必要があるようです。 ConnectionStringの先頭に、 "Persist Security Info=true; " & _ を追記してみてください。 [ メッセージ編集済み 編集者: 未記入 編集日時 2005-12-27 14:52 ] |