当前位置: 代码迷 >> Oracle管理 >> 关于外键的建立有关问题
  详细解决方案

关于外键的建立有关问题

热度:117   发布时间:2016-04-24 04:11:38.0
关于外键的建立问题
比如说我建立下面两个表
create table user(
id bigint(10) premary key auto_increment,
username varchar(20),
password varchar(20)
);
create table user_info(
id bigint(10),
gender char(1);
age int(2);
);
这里可以吧user_info 中的 id字段作为user表的外键吗?

------解决思路----------------------
引用:
那如果我把user_info 的id也定义为主键呢?外键不是这样定义的吗---“如果关系模式R中的某属性集不是R的主键,而是另一个关系R1的主键则该属性集是关系模式R的外键

如果一个表的主键同时是另外一个表的外键,由于主键是一个实体的唯一性标示,所以这种情况,说明实体或表建立的不合适,
可以把两个实体或表合成一个,这样就比较符合设计范式,减少冗余
  相关解决方案