我想选择具有值1
且ID等于1
的列名。我该怎么做?
例如,如果行中存在列名1
,我将如何选择列名?假设我选择了 ID 1
,我想要实现的预期最终结果将是Allowed_2
和Allowed_3
。
这是我在上一段中谈论的表格:https://i.stack.imgur.com/PL8Jr.png
通常不需要从数据库中检索列名,而是要处理表中的值。列名只是标识符,因此您可以链接代码和数据库,但除此之外它们不包含任何含义。
因此,对于您的示例,如果您想知道允许 id 1
的用户执行的操作,您将执行如下查询:
SELECT Allowed_2, Allowed_3 FROM tableName WHERE id = 1
然后像这样使用它(PHP 中的示例):
// database connection, query, etc.
$row = $result->fetch_assoc();
if ($row['Allowed_2'] === '1') {
echo 'user can do action 2';
}
if ($row['Allowed_3'] === '1') {
echo 'user can do this';
}
如果您的游戏变得更加复杂,用户越来越多,请考虑引入角色(例如管理员、用户、游戏管理员等)。您可能有一个名为 role
的表,该表具有 id、名称,然后是不同的Allowed_X
列。然后,您可以将每个用户映射到一个或多个角色,并以这种方式管理它们,这样可以更轻松地管理用户。