将数据存储在用户表或新表中?

时间:2015-03-17 22:02:59

标签: mysql database

最有效,最好,最快的方式是什么: 将“禁止(布尔)”字段添加到用户表,或 创建一个名为'禁止'的全新表?

1 个答案:

答案 0 :(得分:1)

如果被禁止的用户只拥有此单一财产(他们被禁止),那么请去一个字段。例如,在检查他/她是否可以访问页面时,您将能够执行此类操作(在PHP中):

if ($f['banned']) {
    die("Get out of here, you're banned!");
} else {
    // Your logic for normal, i.e., non-banned users
}

其中$f是PDO的fetch()或等效函数返回的数组 但是,如果您需要对禁止的用户进行一些特殊处理(记录他们的IP - 并且只记录他们的IP - 或者,例如,计算他们的试验以访问您的网站),这将涉及其他数据,那么请选择一个显然应该包含的表格一个UserId字段,用于与主用户表关联。然后,在检查用户时,您需要在每个查询中加入此表。