2009-11-28 14 views
5

.NETで最初のデータベースベースのデスクトップアプリケーションを作成しましたが、データベース、アプリケーション、およびSQL Serverが一度にインストールされるように、アプリケーションインストーラでデータベースを展開する方法を理解できません。デスクトップアプリケーションを使用してSQL Server Expressデータベースを展開しますか?

SQL Server用のネイティブクライアントとデータベースをインストーラーでデプロイするだけの場合は動作しますか?

アプリケーションはデータベースを頻繁に使用します。

+1

SQL Server Expressはサーバークラスのデータベースであり、したがって_desktop_アプリケーションにとってはおそらく不適切です。 sqlite、sql server compact、またはアクセスする代わりに_in-process_データベースを使用してください。 –

+0

私は@Joelに同意する必要があります。単一のユーザーデスクトップアプリケーションの場合は、おそらく.dllであるSQL Server Compact Editionを使用する必要があります。したがって、アプリケーションのインストーラの一部として展開できます。 – Murph

答えて

1

clickを使用すると、SQL Serverはメインプロジェクトの依存関係を表現することができます。これは、インスタレーションデータと共に展開され、インストールされていません。

Visual Studioのプロジェクトプロパティで実行できます。

+0

私はそれについて考えていましたが、セットアップのための多くの(または任意の)カスタマイズを提供していません。私は単純なネイティブのSQLクライアントとアプリケーションを使用してデータベースを展開することが可能になるだろうと思っていたと働くだろうか? – Vikas

+0

MicrosoftからSQL Server Expressの無償ダウンロードパッケージを配備すると、SQLエンジンと基本的なクライアントとドライバが含まれているため、動作します。しかし、必要に応じて、最終的なユーザーから手動でインストールする必要があります。 –

+0

@Vikas:SQLクライアントとデータベースファイル(MDF)に加えて、SQL Expressデータベースエンジンのコピーも必要です。この答えは、一度クリックするとそのことを行う最善の方法だと言われています。ユーザーが別のアプリケーションをインストールするのを避けたい場合は、アプリケーションに埋め込むことができるSQL Server Compact Editionに切り替えることを検討してください。 – RickNZ

5

使用する場合は、SQL Expressエンジンをインストールする必要があります。クライアントの接続のみを展開すると、「クライアントの接続性」という名前が示すとおり、SQL Serverに接続できるようになります。ただし、実行中のSQL Serverインスタンスのみがアプリケーションデータベースを読み書きできます。

SQL ExpressのインストールMSIは、実際にはvery customizableであり、無人セットアップとリモート展開を含む多くのシナリオが可能です。最も基本的なオプションについては、Configuring SQL Express During Installationを参照してください。アプリケーションインストーラは、必要なパラメータを渡すExpressインストーラを起動する必要があります。

関連する問題