1

Windows XP マシンに Visual Studio 2008 と SQL Server 2008 Developer Edition をインストールしています。

テスト Web アプリケーションで作業しようとすると、次のエラーが発生します。

SQL Server への接続を確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないか、アクセスできませんでした。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。(プロバイダー: SQL ネットワーク インターフェイス、エラー: 26 - 指定されたサーバー/インスタンスの検索中にエラーが発生しました)

私のADO.NET接続文字列は次のとおりです。

データ ソース=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\TestDB.mdf;統合セキュリティ=True;ユーザー インスタンス=True

SQL Server のフル インストールは、SQL Express データベースの処理方法を知っているべきではありませんか? 「接続された」データベースで作業するために必要なものがインストールされていませんか? または、まだ何かを構成する必要がありますか? これは、過去に(すぐに)私にとってうまくいったと思います。

更新:
本格的な 2008 インスタンスを実行していても、これを Express DB として使用するつもりです。これできないの?メンバーシップ機能を使用しようとすると、ASP.NET は既定でこれらの "高速" データベースのいずれかに誘導しませんか?

4

3 に答える 3

3

お使いの SQL Server Developer エディションでは、サーバー名/インスタンスとして "SQLExpress" が使用されていません。代わりにサーバー名または (ローカル) を使用してみてください。

また、あなたの文字列は、既に接続されているデータベースには不適切です。文字列は次のようになります。

connectionString="Data Source=(local);Initial Catalog=YourDatabaseName;IntegratedSecurity=True"

更新: ASP.NET が特定のデータベースに誘導することはありません。本当に重要なあらゆる点で、ASP.NET が気にかけているのは、接続文字列の結果が、SQL Server のインスタンスにアクセスするために必要なパスと資格情報を完全かつ正確に記述していることだけです。より伝統的な接続文字列を試してから、一度に 1 つの項目を取り消すことを考えたことはありますか (たとえば、「通常の」データベース接続が正しく実行されていることを確認してからデータベース ファイルに名前を付けるなど)。

于 2009-01-29T21:07:57.807 に答える
2

どのバージョンの SQL サーバーをインストールしましたか? その接続文字列はエクスプレス エディション用であり、他のエディションでは機能しません

接続文字列については、こちらを ご覧ください http://www.connectionstrings.com/

于 2009-01-29T21:06:08.997 に答える
0

SQL Server Management Studio を開きます

ログイン時に出力される接続情報を見てください。

その値を接続文字列で使用します。

接続を許可する SQL 構成があることを確認してください。

前の 2 つの手順が役に立たない場合に確認する最後の 1 つのことは、ファイアウォールの設定を確認することです。

于 2009-01-29T21:11:19.690 に答える