1

通常の (従来の) データベース データを持ち、同時に "ini ファイル" データに似たデータを持ち、それらの間の整合性を維持したい (階層データ? )。

たとえば、100 行の「CURRENCY」テーブルがあるとします。同時に、「デフォルト通貨」のシステム設定があり、これを 100 行のいずれかにマップする必要があります。

現時点では、デフォルトの通貨コードを XML 構成ファイル、ini ファイル、または Windows レジストリに保存します。これはデータには問題ありませんが、XML ファイル内の値が実際にデータベース内の有効な外部キー値に対応していることを確認するのは少し手間がかかります。

これをデータベースで (宣言的に) 行うにはどうすればよいでしょうか? 階層データが参照できるため、リレーショナル データとの整合性が保たれます。

4

3 に答える 3

1

キー(または名前)と値の列の2つの列を持つテーブルが、必要なことを実行している可能性があります。リレーショナルデータを正規化されたテーブルに入れ、「config」タイプのデータをキー/値ペアテーブルに入れます。

于 2009-05-18T09:36:55.887 に答える
0

外部キー ID を使用するのではなく、名前で値を構成ファイルに保存する方が理にかなっている場合があります。構成ファイルに「USD」が含まれている場合、コードは名前でルックアップを実行して CURRENCY テーブルの行を取得します。

于 2009-05-18T08:03:47.507 に答える
0

構成設定は、テキスト エディターや regedit などの外部プログラムによって常に更新される可能性があるため、実行できません。これを防ぐ唯一の方法は、ファイルまたはレジストリ設定を継続的に監視し、許可しないサービスを実行することです。データベースが実行されていない限り変更され、整合性チェックも実行できます。これは明らかにやり過ぎです。正しい解決策は、構成データをデータベースに保存することです。

于 2009-05-18T08:07:49.747 に答える