sql >> Database teknologi >  >> RDS >> Mysql

Sådan kontrolleres mysql db, om brugeren er en del af en gruppe

Du kan bruge følgende i enhver SQL-sætning og den API, du vælger.

SELECT ID FROM tbl_staff 
WHERE username='username1' 
AND `group`='Administrator'

eller (sidenote:kolonne_x, kolonne_y er kolonnenavne):

SELECT column_x, column_y FROM tbl_staff 
WHERE username='username1' 
AND `group`='Administrator'

Du kan også gøre SELECT * at vælge alle kolonner, men det er ofte en metode mange SQL-udviklere ikke kan lide at bruge.

Du sagde dog, at dette var til ASP.net, hvilket er noget, jeg ikke ved noget om.

Sidenote: group er et MySQL reserveret ord som kræver særlig opmærksomhed.

Enten ved at pakke ordet ind i flueben eller bruge et andet navn som f.eks. "grupper".

Her er en BOB-metode ved hjælp af forberedte udsagn:

$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;   
}

Referencer:




  1. PostgreSQL:hvordan man installerer plpythonu-udvidelsen

  2. INDSÆT ... PÅ DUBLIKAT NØGLE (gør ingenting)

  3. MySQL:Indsæt i flere tabeller i samme forespørgsel med BEGIN&COMMIT

  4. python mysql.connector DictCursor?