在mysql数据库中存储10个选项的最佳方法是什么?

时间:2009-09-04 14:51:58

标签: mysql enums user-roles

我正在修改我的PHP网络代码,使得像wordpress这样的“用户角色”是我目前的计划

0 =注册非电子邮件验证的用户
1 =已注册并经过验证的电子邮件
2 =主持人
3-9 =什么都没有 10 =管理员

在我的PHP代码中,我将使用这样的数组来设置角色编号的作用。

$user_role['10']

我在考虑存储用户在我的mysql数据库中的值,这是将10个不同的角色选项存储为枚举的最佳方式,还是有更好的方式或更快的方法?我读到enum有时并不是最快的。

enum('0','1','2','3','4','5','6','7','8','9','10')

2 个答案:

答案 0 :(得分:1)

我猜INTTINYINT足以存储用户级别(角色)。此外,您可以考虑将数字乘以10,这样您将来可以有一个空间来添加更多关卡。

答案 1 :(得分:0)

使用位掩码获取权限/用户级别。

请参阅example