3


3

デスクトップアプリケーション用の軽量データベースエンジンが必要です。 アプリケーションはデータ中心ではありませんが、永続的なデータが必要です。 MS SQL Server Express EditionとSQLiteのどちらを使用しますか?

編集

SQL Server Compact Editionは無料ですか? その場合、この種のアプリケーションを開発するためのSQLiteとSQL Server Compactのエディションはどうでしょうか。

13 Answer


10


絶対にSql Server Expressではありません。 これはサーバークラスのエンジンです。 インプロセスエンジンが必要です。 その点では、SQLiteは大丈夫です。 SQL Serverのコンパクト版もそうです。 どちらも無料で、どちらもあなたのニーズには十分なはずです。


10


C#とVisual Studioで作業している場合は、プロジェクトを右クリックして[項目の追加]を選択し、ダイアログで[ローカルデータベース]を選択すると、SQL CE(Compact Edition)データベースが作成されます。 テーブル、データ型、ビューに関するSQL Express / Serverのほとんどの機能を持っていますが、ストアドプロシージャを許可していません。 これはLinq-to-SQLでも動作するので統合するのは簡単です。


4


SQL Server Compactを使用してください - LINQをそのまま使用できます。

SQLiteはオプションですが、ORMレイヤーを取得する必要があります。パフォーマンスの向上は、SQL Serverと比較して最小限に抑えられます。


4


http://www.firebirdnews.org/docs/fb2min.html[Firebird]はよく知られたデータベースで、 http://www.firebirdnews.org/docs/fb2min.html[最新のMicrosoftフレームワーク]をサポートしています。


2


SQLite、特にシングルユーザーの場合 1つのデータファイルと1つのDLL。


2


そのシングルユーザーシステムの場合は、ExpressではなくMS SQL Serverのコンパクト版を参照してください(こちらを参照してください。

Compact EditionはSQLiteに似た埋め込み可能なデータベースです。

残念ながら私はどちらの方法でも推薦をすることはできません。


2


http://www.microsoft.com/japan/Sqlserver/2005/en/us/compact.aspx[MS SQL Server Compact]についてはどうですか。


2


http://www.vistadb.net/[VistaDb]  -  .NETに組み込まれたデータベースの世界での新進気鋭の1人を好む人もいます。 このライセンスは、Sql Server Compactよりもやや制限があります(1人の開発者にのみ無料)が、そのxcopy展開で管理された100%のDBとVSツールの統合があります。


2


SQL CEをEFと一緒に使用する場合は、独自のIDキーを生成する必要があることに注意してください。SQLCEは複数のクエリをサポートしないからです。

すなわち、挿入 - >エンティティのキ​​ーを選択 - >良くない

キーを生成してid(GUIDか何か他のもの)をあなたのエンティティに追加してから挿入 - > good


1


注意しておく必要があるいくつかの制限/機能がありますが、Defo SQL lite