Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como verificar o mysql db se o usuário faz parte de um grupo


Você pode usar o seguinte dentro de qualquer instrução SQL e a API de sua escolha.
SELECT ID FROM tbl_staff 
WHERE username='username1' 
AND `group`='Administrator'

ou (nota lateral:column_x, column_y são nomes de exemplo de coluna):
SELECT column_x, column_y FROM tbl_staff 
WHERE username='username1' 
AND `group`='Administrator'

Você também pode fazer SELECT * para selecionar todas as colunas, mas isso geralmente é um método que muitos desenvolvedores de SQL não gostam de usar.

No entanto, você disse que isso era para o ASP.net, algo sobre o qual não sei nada.

Nota: group é uma palavra reservada do MySQL que requer atenção especial.

Ou envolvendo a palavra em tiques ou usando outro nome, como "grupos", por exemplo.

Aqui está um método PDO usando instruções preparadas:
$db = new PDO("mysql:host=localhost;dbname=db_name", $user, $pass);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

$username = "username1";
$group = "Administrator";

$query = "SELECT COUNT(*) FROM tbl_staff 
         WHERE username = :username 
         AND `group` = :username";

$statement = $db->prepare($query);
$statement->bindValue(':username', $username);
$statement->bindValue(':password', $group);
$statement->execute();
$count = $statement->fetchColumn();
if ($count === 1)
{
    return TRUE;
}
else 
{
    return FALSE;   
}

Referências: