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

MariaDB CURRENT_USER()の説明

    MariaDBでは、CURRENT_USER() は、サーバーが現在のクライアントの認証に使用したMariaDBアカウントのユーザー名とホスト名の組み合わせを返す組み込み関数です。

    構文

    関数は、括弧の有無にかかわらず呼び出すことができます:

    CURRENT_USER
    CURRENT_USER()

    引数は必要ありません。

    デモンストレーションの例を次に示します。

    SELECT CURRENT_USER();

    結果:

    +------------------+
    | CURRENT_USER()   |
    +------------------+
    | [email protected] |
    +------------------+

    括弧なし

    前述のように、CURRENT_USER() 関数は、括弧付きまたは括弧なしで呼び出すことができます。

    括弧なしの例を次に示します。

    SELECT CURRENT_USER;

    結果:

    +------------------+
    | CURRENT_USER     |
    +------------------+
    | [email protected] |
    +------------------+

    同じ結果。

    匿名ユーザー

    匿名で接続するとどうなるかの例を次に示します。

    anonymousを使用して接続する :

    mariadb --user="anonymous"

    CURRENT_USERを実行します :

    SELECT CURRENT_USER;

    結果:

    +--------------+
    | CURRENT_USER |
    +--------------+
    | @localhost   |
    +--------------+

    CURRENT_USER() vs USER()

    CURRENT_USER() 関数が常にUSER()と同じ結果を返すとは限りません 関数(およびその同義語SYSTEM_USER() およびSESSION_USER()

    例:

    SELECT 
        CURRENT_USER,
        USER(),
        SYSTEM_USER(),
        SESSION_USER();

    結果:

    +--------------+---------------------+---------------------+---------------------+
    | CURRENT_USER | USER()              | SYSTEM_USER()       | SESSION_USER()      |
    +--------------+---------------------+---------------------+---------------------+
    | @localhost   | [email protected] | [email protected] | [email protected] |
    +--------------+---------------------+---------------------+---------------------+

    引数は受け入れられません

    CURRENT_USER()に引数を渡す エラーが発生します:

    SELECT CURRENT_USER(1);

    結果:

    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '1)' at line 1

    1. PDO ::__ Construct():サーバーがクライアントに不明な文字セット(255)を送信しました。開発者に報告してください

    2. OracleSQLDeveloperでの新しいデータベースと新しい接続の作成

    3. どちらが速いですか:複数の単一のINSERTまたは1つの複数行のINSERT?

    4. MySQL InnoDB Cluster 8.0-完全なデプロイメントウォークスルー:パート1