我正在建立一个用户保存网址的书签网站。那么将用户的所有网址插入数据库(mysql)的最佳方法是什么。
1)为个人用户创建单独的表。在每个表中创建1列,每行放置1个URL(每个单元格)。
2)创建1个表,并根据用户的行将所有URL插入单个单元格中。
如果第二个选项最好,那么任何人都可以解释我该怎么做吗?我可以在一个单元格中插入一个网址但是如何将所有网址插入到单个单元格中并再次检索它以正确方式显示。 感谢您花时间阅读我的问题。我努力做到这一点,但失败了。这就是问这里的原因。
答案 0 :(得分:3)
使用以下列创建bookmark
表:(id, fk_user_id, url)
。每个条目都有自己的id,外键是用户的id。
您不希望为每个用户创建单个表。那不会扩展!想象一下,你有一千个用户 - 至少有一千张桌子!
第二种方法可以工作,但存在以下问题:
http://google.com
,而客户#1想要添加http://reddit.com
,而客户#2想要添加http://stackoverflow.com
。如果客户端#2在 客户端#1的数据被保留之前读入值,您将最终得到http://google.com, http://reddit.com
或http://google.com, http://stackoverflow.com
,具体取决于最后写入该表的人。如果您在接近同一时间从同一客户端收到多个添加请求,则甚至可能发生这种情况。