デスクトップアプリケーションにSql Server Compactを使用しますか? [閉まっている]

StackOverflow https://stackoverflow.com/questions/416716

  •  03-07-2019
  •  | 
  •  

質問

デスクトップアプリケーションにSQL Server Compactを使用するのは理にかなっていますか?

  • どのくらいのデータを処理できますか?
  • 複数のユーザーで使用できますか?制約は何ですか?
  • データベースファイルが破損するとどうなりますか?プログラムで回復することは可能ですか、または問題をリモートで簡単に解決できますか?
役に立ちましたか?

解決

私は確かにそうします(します)。 SQL Compact(SQLCE)には、いくつかのシナリオで明確な利点があります。今では、SQL Serverの代わりになるものではありません。スケーリングせず、数千の同時接続を実行するように作られていません。レポートサービスなどのために設計されていません。

ただし、フットプリントは tiny です。インストールは、DLLをコピーするだけです。バックアップは簡単なファイルコピーです。また、テーブルダイレクトまたはBCPを使用している場合は、ストレージおよび取得のために高速に移動できます。ああ、それは無料です。アプリのローカルデータストアだけが必要な場合、SQL Serverを展開して構成するのは面倒です。 SQLCEは簡単です。さらに、完全なSQL Serverと同じサンドボックスでレプリケーションサブスクライバーとして再生できます(他のほとんどの小さなDBではできません)。

編集:特定の質問への回答を忘れました:

  • どのくらいのデータを処理できますか? 何の面で? DBサイズ?スループット?テーブルサイズ?行サイズ? 私の経験では、問題なくDBを数百MBまで使い果たしました。 4GB(4.0現在)を保持できると思います。スループットは、データの出し入れ方法に直接関係します。私たちは問題なく1秒あたり1k行をキャプチャするソリューションで使用しています。 1024列と最大行サイズ8kを使用できます。
  • 複数のユーザー?まあ、それは複数の同時接続(3.5時点)を処理できるので、はい、それは動作するはずです。 1人のユーザーから複数の接続を使用しましたが、複数の接続は使用しませんでした。
  • 壊れたデータベース? 「壊れた」を定義します。エンジンには「コンパクトと修理」があります。方法。他のファイルと同様のファイルです-壊れた実行可能ファイルをどのように修正しますか?あなたが求めているのであれば、フィールドの破損は見られません(悪いストレージカードを持っている1つのCEデバイスでやったのですが、それはエンジンの故障ではありません)。

他のヒント

小さなデータベースが必要な場合は、SQLLiteなどを使用します。

しかし、ここは記事ですサーバーでのコンパクトエディションの使用について

1つのアプリケーションに使用しましたが、うまく機能しました。私が抱えていた唯一の問題は、何らかの理由で、SQL Server 2005 Management StudioがSQL Server CEの最新リリースのすべてのデザイナー機能をサポートしていないことです(たとえば、テーブルを編集できません)。 2008年のバージョンを使用する必要があります。

十分高速ですが、確かに小さなデータセットに使用しました。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top