数据库设计中,会为每个注册用户都新建一张表吗

crazy__chen
领域专家: 算法与数据结构技术领域
2014-04-25 02:41:38
数据库设计中,会为每个注册用户都新建一张表吗
这样合不合理,现实的怎么做的?
...全文
1028 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
smiledoublenn 2016-12-04
  • 打赏
  • 举报
回复
想问一下楼主的问题解决了没有,我现在也遇到了和楼主同样的问题了,楼主能不能指导一下?
Rotel-刘志东 2014-04-27
  • 打赏
  • 举报
回复
还是要看具体应用场景了,另外具体需求了。
crazy__chen 2014-04-26
  • 打赏
  • 举报
回复
用户表:create table user(id int primary key auto_increment, username varchar(255),password char(32)) ; insert into user(username,password) values("admin",md5("admin")); insert into user(username,password) values("guest",md5("guest")); 下面建立标签表 第一种方法: //为第一个用户单独建立标签表 create table 1_tags(id int rimary key auto_increment, tagname varchar(255)); //为第二个用户单独建立标签表 create table 2_tags(id int rimary key auto_increment, tagname varchar(255)); //插入数据 insert into 1_tags(tagname) values("测试"); //查询的时候 只要查询第一个用户的tags表就可以查到他所有创建的标签了 第二种方法: create table tags(id int rimary key auto_increment, tagname varchar(255)); //创建用户,标签关联表 create user_tag(uid int, tagid int); 说到这里大家懂我的意思了吗? 大家做项目的时候,是用哪种方法? 可能我这样说还是比较空泛。。谁能给我点参考意见,多谢
ACMAIN_CHM 2014-04-25
  • 打赏
  • 举报
回复
楼主可以把两种设计均用 create table ... 写出来,然后再写出需要对应的各自查询,插入语句。这样方便比较。 空泛的讨论的话,只能说两种方式均有人使用过,在不同的应用场景。
crazy__chen 2014-04-25
  • 打赏
  • 举报
回复
我的意思是用户的个人信息,会不会为他单独建一张表比较好呢? 例如用户可以自定义标签的话,先在user表里面存在id=1的用户, 现在用户要自定义标签,我是不是可以针对他创建一个tags表呢? 还是所有用户的所有自定义标签,都存在一个tags表里面,然后在tags里面设置uid字段,从而联系用户与标签? 前一种方法,实际会这么做吗?真的存在这样的情况吗? 后一张方法,会不会造成查询用户对应的自定义标签是速度慢?
ACMAIN_CHM 2014-04-25
  • 打赏
  • 举报
回复
看具体应用,至少要先讲清楚然后才能决定是创建一个还是多个。
卖水果的net 2014-04-25
  • 打赏
  • 举报
回复
每个用户一条记录,不能做成每人一表,那岂不让人拍桌子。
wf_kingofring 2014-04-25
  • 打赏
  • 举报
回复
当然不会,一个注册用户就是一条记录而已
benluobo 2014-04-25
  • 打赏
  • 举报
回复
不会
没这种设计

ayzen1988 2014-04-25
  • 打赏
  • 举报
回复
你为什么要每个用户都建一张表呢?

57,062

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧