日期:2014-05-17  浏览次数:20518 次

请教foreignkey的问题
实验课上需要我们建立一个数据库,然后有两个关系 USERS(借阅证号,姓名,单位,办理日期,分类,email)和CLASSUSER(编号,类别,借阅期限,借书上限),其中USERS表中的"分类"是参照CLASSUSER里面的"编号"。可是这两个属性的名称不一样,一个叫"分类",一个叫"编号",到时候会影响整个数据库的建立不?如果有影响,要怎么做呢?谢谢各位!

------解决方案--------------------
具体其实要看你的数据字典,也就是每个字段的解释,如果CLASSUSER(编号,类别,借阅期限,借书上限)这里的编号只是一个主键标识,而真正的分类是“类别”,那么是没问题的。对每个字段不同的解释,一个表就有不同的用法
------解决方案--------------------
SQL code
--连接查询的时候,对应上即可,例如:
select * from USERS a left join CLASSUSER b on a.分类=b.编号

--当然如果可以统一的话最好,便于理解,例如把user的分类改成类别编号,你们建表都是中文字段?