【问题标题】:Bitwise Clarification逐位澄清
【发布时间】:2012-10-27 15:44:23
【问题描述】:

首先,请让我澄清一下,我不是以英语为母语的人,所以请原谅我的错误。

我目前正在使用按位系统权限创建一个 PHP 用户系统,并将这些权限存储到 MySQL 数据库中。

我的问题如下。 我应该使用什么类型的行(int、varchar、...)来存储权限

我的第二个问题是,可以存储多少权限? (32 位有 ~32 个权限的限制(我认为))

感谢您的帮助!

【问题讨论】:

    标签: php mysql bit-manipulation


    【解决方案1】:

    我会使用integer types 之一。哪一项取决于您需要多少权限。

    TINYINT 将允许 8 权限

    SMALLINT 将允许16 权限

    MEDIUMINT 将允许24 权限

    INT 将允许 32 权限

    BIGINT 将允许 64 权限

    【讨论】:

    • 是的,这就是我决定做的事...... 5 个月前 -.-
    【解决方案2】:

    您可以使用BIT(1) 数据类型。然后,您可以为每个权限单独使用 bit 列。

    【讨论】:

    • 如果所有的位都设置为 0 或 1,将很难进行位运算
    猜你喜欢
    • 2020-10-13
    • 2013-04-24
    • 2019-11-15
    • 2013-06-05
    • 2013-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多