我有两个不同类型的用户表。其中一个是注册用户的普通用户表。另一个是未注册用户。 我需要将这两个表与其他表一起使用。例如;
registered_users:用户ID,用户名,密码,姓名,性别,电子邮件,IP
unregistered_users:用户ID,姓名,性别,IP
some_table: id,title,content,userid
如何将some_table加入用户表?
我有一些意见,但没有一个感觉不对。
或创建另一个用户表以组合两个用户表。当然,我们再次使用空列。
您认为哪种方式最好?或者任何人都有不同的意见。
答案 0 :(得分:2)
当内容相同时,为什么要尝试通过创建两个表来复制它,而不是创建一个名为users的表
create table users
(
user_id int not null auto_increment primary key
username varchar(500),
password varchar(500),
email varchar(400),
ip varchar(800),
reg_status enum(0,1),
);
然后您可以使用此user_id并将其引用到您的辅助表中。
您可以在reg_status上建立查询
0 - Unregisterd
1 - Registered
如果您想要更多规范化的表格
然后你可以使用两个表
create table users
(
user_id int not null auto_increment primary key
email varchar(400),
ip varchar(800),
reg_status enum(0,1),
);
create table registered_users
(
login_id int not null auto_increment primary key
username varchar(500),
password varchar(500),
user_id - F.k (Foreign Key)
);