2011-03-10 10 views
0

私はC#でいくつかのデータを保存し、簡単なクエリを使ってレポートを生成する簡単なプログラムを書いています。C#用のシンプルなデータベース管理者

データは約百万レコードです。

これを行うにはどのような方法が適していますか? MsSql、MySql、...を使用するか、このデータ量を管理して使用する簡単な方法がありますか?

UPDATE:私はシンプルを意味実際効率的で。可能であれば私のプログラムをスタンドアロンにしたい。データを保存するための単純なファイルを使用していますが、私は最初からすべてを作成したくありません。

+2

データベースプラットフォームは無関係です。データのクエリが効率的になるように、データベーススキーマが適切に設計されていることを確認してください。 – Bernard

答えて

1

おそらくMS SQL ServerまたはMySQLのいずれかがちょうどいいと思い

TNX。どちらのシステムも商用製品に使用されており、そのようなもののための強力なツールセットを持っています。

SQL Serverのライト版であるSQL Expressを調べてください。それは無料です。 SQL Server Express

はまた、あなたが実際にアプリケーション(サーバーやインストールは必要ありません)にを埋め込むことができSQL Server Compactがあります。

+0

ええ、あなたはかなり正しいです。私はサードパーティのデータベースサーバーを使用しない方が良いので、私のプログラムは_massive_インストールなしで簡単に動作します。 – MBZ

+1

私の編集を参照して、SQL Compactを追加しました。大規模なインストールはありません! :-) – richard

+0

ああ、ありがとう:) – MBZ

0

リチャードは正しいです、メインストリームデータベースエンジンのどれでも十分でしょう。大量のデータを扱うため、レポート作成に必要なスキーマを調整するか、集計ロールアップテーブルを作成してレポートを高速化することを検討してください。集約操作を行うときに古いデータを何度も何度も照会する必要はありません。最後に、フィルタリングおよび並べ替える列に適切なインデックスを作成してください。

Good Luck!

+0

これは、彼のdbを作成するときに気をつけるべきことの素晴らしい "短いリスト"です。 – richard

1

プログラムをスタンドアロンでシンプルにするには、間違いなくSQLiteまたはFirebirdを使用してください。これらのデータベースはかなり高速です。私の経験から、SQLiteは単語クラスのスタンドアロン/組み込み可能なデータベースです。 SQLServer Compact Editionや他の候補よりも好きです。

0

SQL Server Compactを使用することをお勧めします。それは、C#で使いやすいように、Microsoftのスタックを使用します。また、組み込みデータベースであるため、実行するサーバーは必要ありません。スタンドアロンで実行されます。

http://msdn.microsoft.com/en-us/library/ms144275.aspx

関連する問題