数据库自动增加主键与业务登录

时间:2011-09-23 19:21:06

标签: database primary-key auto-increment

我有一个包含USERS表和EVENTS表的数据库,两者都有自动增量整数主键,称为id。当客户端应用程序启动一个事件,一条消息发送到服务器,并且服务器在EVENTS表中创建一个新的EVENT条目,其中包含启动该事件的用户的用户名(以及更多数据)。 现在,在需要时重新获取此事件的最佳做法是什么? 例如,如果第二天用户想要向服务器询问此事件,服务器是否应该按用户名搜索EVENT表(每个用户在表中只有一个事件)?如果是这样通过字符串搜索效率不低,那么事件整数id? 或者当服务器在EVENTS表中创建事件条目时,我需要向用户发送条目ID,所以下次用户请求事件时他可以用id询问它吗?但如果我这样做,我使用自动增量ID与业务登录,我不知道这是好的..

1 个答案:

答案 0 :(得分:0)

您希望在具有用户ID

的事件中使用foreign key.

要让特定用户完成活动,您只需

select events.*, users.* from users left join events where users.id = events.user_id
WHERE user.username = 'johnboy'