我有一个users
表,自动增加id
,也是一个独特的字母数字pid
。只有pid
被公开曝光,因为我不希望黑客通过在id
上运行for
循环来游戏系统并提取所有用户数据。Mysql自动增量ID或字母数字ID作为外键
问题是,我甚至需要在第一位存储自动增量id
?我需要选择其他用户相关表的外键,如user_details
,user_orders
等。我应该使用pid
还是数字id
作为fk?
有些担忧:
- 加入 - 威尔联接使用
id
比pid
更有效率? - 索引 - 索引
id
会比索引pid
更快吗? - 交易记录 - 当
pid
被用作foreign_key
时,涉及多个原子插入的交易是否可行?
这可能是有趣的:http://stackoverflow.com/questions/332300/is-there-a-real-performance-difference-between-int-and-varchar-primary-keys – PaulF