2013-05-03 19 views
0

我正在使用社交网络。随着活动(如评论,关注,发布等),用户,页面关注,专辑,照片和其他一些事情。现在MySQL:数据库中每个实体的一个自动增量ID

,在社交网络中最重要的事情之一是活动饲料。我有一个activity_feed表,user_table,follow_table,like_table等结构...我在想:如果我使用一个独特的AUTO INCREMENT来识别我的应用程序中的每一个实体呢?

实施例:

用户通过注册加入我的网站:

  • 添加的活性activity_feed(和获得ID)
  • 添加用户USER_TABLE(带外键activity_feed)

实施例2:

用户上传照片:

  • 添加活动activity_feed
  • 添加照片照片表(带外键)

这将简化API调用(例如:http://api.domain.com/ID),删除实体,将来的数据库共享和其他许多事情。

我注意到Facebook有这样的结构。很明显,索引可以在其他表上进行(例如:activity_index_type,其中activity_type - > user和activity_id)。

可能是一个很好的解决方案?

对不起,我的英语! :$

回答

0

这是Globally Unique ID的概念(GUID)。 MySQL有一个函数来生成它们:UUID()。这里有一个关于SO的建议storing GUID

+0

呃,我知道GUID,但是我想知道如果在这种方法中使用INT可能会很好吗?谢谢! – Monte 2013-05-04 08:24:52

+0

我在答案中链接的答案建议使用'CHAR(16)二进制'。这是链接了。 http://stackoverflow.com/questions/412341/how-should-i-store-guid-in-mysql-tables – Andrew 2013-05-05 05:46:33

相关问题