0

私はc#asp.netなどにかなり慣れていないので、ご容赦ください:)コンピューター上のデータベースに接続できるように、インターネットで正しい構文を探していました。

私はこれを試しました:

 SqlConnection myConnection = new SqlConnection("server=localhost;" +
                                               "Trusted_Connection=yes;" +
                                               "database=mmcinfo.mdf;");

しかし、myConnection.Open(); でエラーが発生します。言って:

SqlException was unhandled by user code SQL Server への接続を確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないか、アクセスできませんでした。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。(プロバイダー: 名前付きパイプ プロバイダー、エラー: 40 - SQL Server への接続を開けませんでした)

正しいデータベース/サーバーなどを呼び出す際に何か間違ったことをしていることは知っていますが、これを修正する方法の手がかりがありません。

4

4 に答える 4

0

SQL Express を使用していますか? その場合、接続文字列は localhost\sqlexpress である必要があるかもしれません

于 2012-09-30T15:06:32.027 に答える
0

.mdf接続文字列から削除してみてください

 SqlConnection myConnection = new SqlConnection("server=localhost;" +
                                           "Trusted_Connection=yes;" +
                                           "database=mmcinfo;");

探索したサーバーを使用して、正しい接続を取得/検証することもできます

アップデート

SqlConnection myConnection = new SqlConnection(@"Data Source=./SQLEXPRESS;
            AttachDbFilename=C:\Users\Tim\Documents\Visual Studio 2010\Projects\WebApplication2\WebApplication2\App_Data\mmcinfo.mdf;
            Integrated Security=True;Connect Timeout=30;User Instance=True");

または、dbファイルがWebアプリフォルダーにあるため、移植性のためにさらに良い

SqlConnection myConnection = new SqlConnection(@"Data Source=./SQLEXPRESS;
            AttachDbFilename=|DataDirectory|\mmcinfo.mdf;
            Integrated Security=True;Connect Timeout=30;User Instance=True");
于 2012-09-30T15:06:33.913 に答える
0

任意の場所に .udl 拡張子ファイルを作成してダブルクリックし、ウィザードに従ってデータベースに接続します。完了したら、ファイルをメモ帳にドラッグしてコピーし、接続文字列をプログラムに貼り付けます。ビンゴ

于 2012-09-30T16:08:06.823 に答える
0

わかりました、数週間後、多くの人が示唆したように、接続文字列ではないことがわかりました。SQL サーバーは、ファイルにアクセスする権限が必要な Windows 上のユーザーのように振る舞うようです。私の場合、これらは正しく設定されていませんでした..

于 2012-10-11T12:21:41.187 に答える