識別関係と非識別関係に関して多くの質問がありましたが、それらはすべて 1 対多の関係に焦点を当てています。以下は私の現在の理解です。間違っていたら訂正してください。
親のキーが子の PK の一部である場合、それは識別関係です。これは、親テーブルの対応するレコードがなければ子テーブルのレコードは存在できず (本は著者なしでは存在できない)、子テーブルのレコードを一意に識別するために親の PK が必要であることを意味します (明らかに、子 PK の一部)。
1 対 1 の識別関係も同様です。例として、トランスミッション テーブル、automatic_transmissions テーブル、および manual_transmissions テーブルがあります。ここで、automatic_transmissions テーブルと manual_transmissions は両方とも、トランスミッションに対して 1 対 1 の識別関係を持っています。各 automatic_transmissions テーブルと manual_transmissions テーブルには関連付けられたトランスミッションが必要であり、トランスミッション PK は、automatic_transmissions テーブルまたは manual_transmissions テーブル内の関連付けられたレコードを一意に識別できます。このアプローチが使用されるのは、automatic_transmissions テーブルと manual_transmissions テーブルの両方が多くの属性を共有していますが、それぞれに固有の属性もあるからです。
私は今まで大丈夫ですか?
ここで、1 対 1 の非識別関係を取り上げます。何、PK のないテーブル?なぜそのようなテーブルが必要なのですか?いくつかの例は何ですか? どのように使用されますか?