2009-08-13 18 views
1

デスクトップアプリケーションでは、簡単な情報を持つ患者名のデータベースを保存する必要があります。このデータベースは後で検索することができます。私は平均で約1,000人の患者がいると思います。各患者は、試験結果にもリンクされなければならないが、これらは患者自身から別個に保存されてもよいし、保存されてもよい。C#で検索可能なデータを保存する方法

データベースはこれに最適なソリューションですか、または過剰ですか?一般に、私たちは、患者の姓名またはID番号に基づいて検索するだけです。すべてのデータはアプリケーションと共に保存され、その外部では共有されません。

このようなデータをすべて整理するための最良の方法についてのご意見はありますか?別のテストデータを格納する方法は、データベースを使用していないときに患者にリンクされたままにしておくと、私を困惑させるようなものです。

List<Patient>を指定すると、1000〜10,000人のリストがあるが、パフォーマンス上の懸念があるかどうかは不明ですが、いくつかのLINQコマンドを使用して簡単に検索することができます。

答えて

6

データベースを使用します。主にあなたが期待しているものと、(特に長期的に)得られるものは、全く異なる2つのものになる傾向があります。

+0

LOL、私は3人の私達が「回答を提出する」と同じ正確な時刻に同じ回答をしたと思います。 – mkchandler

+0

「典型的な」システムに対する期待が満たされていても、あなたのアプリはよく –

2

私は1000がXMLに保存しようとすることが多いと思います。私は、アクセスやSqliteのようなシンプルなdb型を使用します。はい、実際には、私はおそらくSqliteを使用します。 Sql Server Expressはおそらくそれには残念です。 http://sqlite.phxsoftware.com/は、.netプロバイダーです。

+0

私は個人的なプロジェクトでこのライブラリを使いこなしてきました。それは素晴らしいです。 – MyItchyChin

+0

コンパクトなフレームワークで動作します。 SQL CE臭い!!!! – Darthg8r

1

データベースをお勧めします。あなたはそのようなもののためにSQL Server Expressを使うことができます。 XMLやそれに類するものを使用しようとすると、おそらく多くの行が手に入らなくなります。

このような小規模なデータベース/アプリケーションの場合、LINQ to SQLまたはEntity Frameworkを使用することによるパフォーマンスの低下に気づいていません。

0

Microsoftから提供されている最適なツールサポート(IDE統合)を使用しているため、SQL Server Expressを使用します。私はそれを過度に考慮する理由は見ません。

article on how to embedをアプリケーションに直接インストールします(別途インストールする必要はありません)。

+0

SQL Expressは、付属のオーバーヘッドのために使用しません。ネットワークを介してデータを共有しようとは考えていません。ローカルマシンにスコープされています。 SQL Expressはサービスをインストールするだけでなく、かさばる管理スタジオもインストールしてインストールする必要があります。 Sqliteでは、何もインストールすることはありません。 DLLを参照してDBに接続するだけです。すべての時間稼働しているサービスはありません。リソースを占有しています.... – Darthg8r

+0

ランタイム環境用の管理ツールをインストールする必要はありません。これは実際には「それに依存する」質問の1つです。 SQL Server ExpressとSQLiteは両方とも賛否両論を提供する正当なソリューションです。 –

3

これは技術的なレベルでのあなたの質問とはまったく関係ありませんが、米国の会社でこれをやっていますか?どんな種類の患者データを保存していますか?

HIPAAの要件を調べ、covered entityであるかどうかを確認しましたか?すべての法的規制と要件に準拠していることを確認してください。

+0

医者ではありません。 –

+0

また、 "対象エンティティ"チャートをチェックし、このプロジェクトには適用されません。しかし、懸念をありがとう。 –

0

アプリケーションによって使用されることを意図した何らかの種類の標準形式で別のパーティから提供された読み取り専用ファイルがあった場合は、ユースケースに従ってインデックスを作成し、それ。しかしそれはまだいくつかのカスタマイズされた作業です。

リレーショナルデータベースは、テーブルにデータを格納し、テーブル間の関係を表すのに最適です。通常は、データを出し入れするための良いツールもあります。

データを保存するために使用できるシステムは他にもありますが、入力に非常に迅速にマッピングされるシステムはありません(データがこのシステムにどのように取り込まれるかは言及せず)。 。

選択するデータベースさて

、...

0

使用データベース...多分ちょうどSQLiteの代わりに、MS SQL(エクスプレス)のような本格的なデータベースの。

関連する問題