リレーショナル代数とデータベース クエリを学習しようとしています。次の質問と模範的な回答で、回答のように Q1 ですべての属性の名前を変更した場合、自然結合を引き続き実行できますか? 2 つの関係には、同じ名前を持つ共通の属性が少なくとも 1 つ必要であると考えました。ここで何が起こっているのか説明していただけますか? どうもありがとう!
質問する
808 次
1 に答える
1
属性名は同じである必要はありませんが、同じでないと混乱する可能性があります。ただし、たとえば [sid] < SUPPLIERS[sid] に言及することで、実際の関係が明確になります。
たとえば、Suppliers.sid を Suppliers.supplierId に変更し、Catalog.sid が Suppliers.supplierId に関連していることを明確にします。
実際には、私が設計したテーブルの PK を常に Id と呼び、他のテーブルで FK として使用する場合は [tablename]Id と呼びます (例: SupplierId)。
于 2015-03-27T11:46:12.127 に答える