0

私は C# を学習しようとしていますが、この障害にぶつかりました。私の Visual Studio 2010 では、サービス ベースのデータベース (.mdf ファイル) を作成できません。(追加>新しいアイテム>サービスベースのデータベース)

新しい .mdf を追加しようとするたびに、エラーが発生します。

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

問題なくローカル データベース ([追加] > [新しいアイテム] > [ローカル データベース]) を作成できますが、.mdf を作成できません。

Windows 7 64 ビット OS と Visual Studio 2010 (Ultimate) で実行しています。

4

4 に答える 4

1

サービスベースのデータベースは、SQLServerインスタンスに接続する必要があります。Visual Studioに組み込まれているわけではなく、接続するためにどこかで実行する必要がある別個のアプリケーションです。このエラーメッセージは、基本的に、接続しようとしているSQLServerインスタンスが見つからないことを示しています。

ローカルデータベースは、すべてをアプリケーションに対してローカルに保ち、機能するために外部データベースサーバーを必要としないため、正しく機能します。

于 2012-10-29T19:57:12.513 に答える
1

これら 2 種類のデータベースを使用するための基本的な要件:

  • ローカル データベース ( .sdf): SQL Server Compact が必要です。つまり、追加の DLL のみが必要で、特別なシステム サービスは必要ありません。(SQLite を知っている場合: SQL Server Compact は概念的には同じものですが、より強力で機能が充実しているだけです。)

  • サービス ベースのデータベース ( .mdf&.ldfログ/ジャーナル ファイル): SQL Server または SQL Server Express の実行中のインスタンスが必要です。どちらもスタンドアロン製品です ( Tim Copenhaver が彼の回答で指摘しているように)。開発目的では、通常、これらの製品のいずれかを開発マシンにインストールします。

問題の考えられる原因:投稿されたエラー メッセージから推測すると、SQL Server も SQL Server Express もインストールされていません。ただし、データベースを「アタッチ」できるように、これらの製品のいずれかのインスタンスが必要です。.mdfこれは、実際にデータベースにアクセスする前に必要です。

SQL Server がインストールされているかどうかを確認するには、.\SQLEXPRESSたとえば、[コントロール パネル] → [管理ツール] → [サービス] を開き、「SQL Server ( )」または「SQL Server ( )」などの名前のシステム サービスを探しますYOURCOMPUTERNAME\MSSQLSERVER。括弧内の名前は、マシンで実行されているデータベース インスタンスの名前です。SQLEXPRESSは SQL Server ExpressMSSQLSERVERの既定のインスタンス名であり、 は SQL Server のフル バージョンの既定のインスタンス名です。

SQL Server をインストールしていない場合は、SQL Server 2012 ExpressまたはSQL Server 2008 R2 Express with SP2を Microsoft から無料でダウンロードできます。

于 2012-10-29T19:59:02.883 に答える