1
私は、DBの設計を以下しているが(ちょうど不可欠な情報を保持):1つの列から別の表を参照する方法は?
TABLE monument
PRIMARY KEY id
name
TABLE restorer
PRIMARY KEY id
name
TABLE project
PRIMARY KEY id
name
TABLE restorer2project
FOREIGN KEY restorer_id REFERENCES restorer(id),
FOREIGN KEY project_id REFERENCES project(id)
PRIMARY KEY (restorer_id, restoration_project_id)
TABLE monument2project
FOREIGN KEY monument_id REFERENCES monument(id)
FOREIGN KEY project_id REFERENCES project(id)
PRIMARY KEY (monument_id, project_id)
プロジェクトは、多くのレストアを持っているし、多くのmonuments.Alsoプロジェクトが同じ関係が、異なる日付で、将来的に繰り返すことができますすることができます。 私はテーブルウィッチを作成して写真を保存したいと思います。
TABLE picture
PRIMARY KEY id
reference_to_different_tables
1つの列と異なる表を指すことは可能ですか? はいの場合? この良いデザインです(写真でもっと多くのテーブルを作成することは想像できます)
他の方法は他のテーブルの画像を参照することですが、何らかのマッピングテーブルが必要ですそれも良いデザインであれば確かめてください。
私は 'picture'テーブルに3つの列を追加するだけです。 'project_id'はヌル可能ではなく、' restorer_id'はヌル可能ではなく、 'monument_id'はヌル可能です – CptMisery
@CptMisery:一つは、データの整合性を手作業で処理しなければならないということです。それほどユニークなデザインパターンではなく、 –