将所有图像放在一个表中是不好的做法?

时间:2014-04-10 13:59:46

标签: mysql database database-design

我正在使用Symfony2 Framework和backboneJS创建一个小社区。 当我今天看一下数据库时,我意识到使用这个模式存储所有图像可能是错误的。

ImageTable

  1. Id
  2. 标题
  3. 所有者
  4. 描述
  5. 地址
  6. 因此,当用户登录并希望查看自己的图像时,我只需遍历owner == currentuser所有的图像。 这是一种不好的做法吗? 我拥有的所有者越多,查询的时间就越长,对吧? 我问,因为重组整个网站数据库可能需要一周的时间,我不想修复可能没有破坏的内容。

    我知道解决方案可能是在当前用户表和自己的图像表之间设置多种关系,但是值得付出努力吗?

1 个答案:

答案 0 :(得分:0)

据我所知,这与你的场景一样正常化。由于用户可能拥有多个图片,但是图片不能包含多个图片所有者(或者他们可以吗?),因此多对多关系正在寻找您的内容。

因此,如果Owner是表user的外键,那么你很好。