私はPlantGroupsのテーブルを持っているとしましょう。彼らはテーブルPlantsに依存しており、外部キーPlantIdを持っています。各PlantGroupには1つのプラントのみが含まれています。外部キーの関係を削除できる状況でデータの整合性を維持する方法
テーブル植物のレコードが削除され、または削除するように要求された場合PlantGroups
==========
...data...
PlantId
Plants
======
PlantId
、どのようなプロセスは、PlantGroupsのデータの整合性を確保するために取られるべきですか?
さらに、対応するPlantGroupsレコードの他のデータ(削除が要求されたPlantsレコードに依存していたデータ)は、依然として関連性があり、保存する価値がありますか?
編集した質問では、各プラントグループには1つのプラントしか含めることができません。 –
ロジックを追加することは、私がやろうとしていることですが、私は他人が何を言わなければならないのか不思議です。私はカスケードの削除を認識していますが、質問に記載されているように、私はまだ関連するデータのためにそれを避けたいと思います。 –
最新のプラント(またはプラントに関連するその他の情報)などの情報をプラントグループに保存し、現在のプラントを削除して後で新しいプラントに更新できるようにすることができます。あるいは、プラントのステータスを削除したことを示すようにプラントのステータスを保持して、他のロジックが情報に基づいたアクションを実行できるようにすることもできます。検索結果にアクティブなものを表示しない、または削除されていないプラントがあるまでフィールドを更新できないようにするなどです。これは、システムがこれらの関係をより動的か静的にする必要があるかどうかによって異なります。 – jheep