sql >> データベース >  >> RDS >> Mysql

mysqldbがユーザーであるかどうかを確認する方法はグループの一部です

    以下は、任意のSQLステートメント、および選択したAPI内で使用できます。

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

    または(補足:column_x、column_yは列の例の名前です):

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

    SELECT *を実行することもできます すべての列を選択しますが、これは多くのSQL開発者が使用したくない方法です。

    ただし、これはASP.net用であるとおっしゃっていましたが、これは私が何も知らないことです。

    補足: グループ MySQL予約語 です 特別な注意が必要です。

    単語を目盛りで囲むか、たとえば「グループ」などの別の名前を使用します。

    プリペアドステートメントを使用したPDOメソッドは次のとおりです。

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

    参照:




    1. エンティティフレームワークPostgreSQL

    2. xマイル半径内の他の行のmySQL経度および緯度クエリ

    3. SQLServerの監視でアラートの過負荷を防ぐための4つの方法

    4. ORDER BY RAND()代替