首页 > 多用户系统的用户表该怎样设计啊

多用户系统的用户表该怎样设计啊

比如一开始用户用微博帐号登录到系统,那user表会记录他的登录类型为微博,userid为1,
后来用户又用qq登录了系统,userid为2了,
等用户1,2都在系统了产生了一些数据之后,他才想起来合并,不知道这样的情况用户表该如何设计啊,总不能每次查询都要带上 userid in (1,2)吧,求指点,谢谢


个人觉得用另外一个表比如 user_oa 存第三方网站登录信息,在用户首次登录的时候就自动在用户表比如 user 创建一条主记录,关联第三方登录信息。同一用户如果想添加绑定第三方账号,只有用 user 表里的主账号登录后才可以操作,否则就会生成一个新的账户。


等他想起来合并的时候你就做一个数据迁移呗,然后不就变成一个用户了?无非就是浪费了一个userid而已。


一个主表,是自己的用户表
user (id int , xxx)
每个开放平台各一个表
qq_user(openid char(32), user_id)
weibo_user(openid char(32), user_id)

自己的系统里面所有的数据都只跟自己user表中的id相关。
用户登录的时候,才去查 开放平台的表, 取出自己的user_id保存在session中。

在已登录态,用另外一个平台登录后,就装这个平台的openid与当前登录的userid绑定

【热门文章】
【热门文章】