我正在尝试学习关系代数和数据库查询。在下面的问题和模型答案中,如果我们重命名Q1中的每个属性,就像在答案中一样,是否仍然可以执行自然连接?我认为这两个关系需要至少有一个具有相同名称的公共属性。你能帮忙解释一下这里发生了什么吗?非常感谢!
答案 0 :(得分:1)
属性名称不必相同,但如果不是,则可能会造成混淆。但是,通过提及,例如, [sid]<供应商[sid]你说明了实际的关系。
你可以重命名,例如Suppliers.sid to Suppliers.supplierId然后明确表示Catalog.sid与Suppliers.supplierId有关,而且它就在那里。
实际上,我总是调用我设计Id的表格的PK,当在其他表格中使用它作为FK时,我称之为[tablename] Id,例如供应商ID。