MySQL関数リファレンス

認証時に使用されたユーザー名を確認する (CURRENT_USER)

スポンサードリンク
書式
CURRENT_USER( )

CURRENT_USER関数を使用することで認証時に使用されたユーザー名を調べることができます。

例1(rootで認証した場合)
mysql> SELECT CURRENT_USER( );
+-----------------+
| CURRENT_USER( ) |
+-----------------+
| root@localhost  |
+-----------------+
1 row in set (0.00 sec)

通常のユーザーである場合、このCURRENT_USER関数はUSER関数と同じ結果を返します。

例2(CURRENT_USER関数とUSER関数の比較1)
mysql> SELECT USER( ), CURRENT_USER( );
+----------------+-----------------+
| USER( )        | CURRENT_USER( ) |
+----------------+-----------------+
| root@localhost | root@localhost  |
+----------------+-----------------+
1 row in set (0.00 sec)

しかし匿名ユーザーでログインして、接続時に指定したユーザー名と認証時に使用されたユーザー名が異なる場合、CURRENT_USER関数はUSER関数が異なる結果を返します。
以下の例3は、接続時に「mysql -u tokumei」とデータベース上に存在しないユーザー名「tokumei」を指定し、匿名ユーザーとしてログインした場合の例です。

例3(CURRENT_USER関数とUSER関数の比較2)
mysql> SELECT USER( ), CURRENT_USER( );
+-------------------+-----------------+
| USER( )           | CURRENT_USER( ) |
+-------------------+-----------------+
| tokumei@localhost | @localhost      |
+-------------------+-----------------+
1 row in set (0.00 sec)
スポンサードリンク
Cではじまる MySQL の関数 / システム関数

システム関数

スポンサードリンク

Cではじまる MySQL の関数

CEIL 小数点以下を切り上げる
CEILING 小数点以下を切り上げる
CHAR 文字コードを文字に変換する
CHAR_LENGTH 文字列の文字数を調べる
COALESCE リストの中で最初に出現するNULL以外の要素を調べる
CONCAT 文字列を結合する
CONCAT_WS 文字列を結合する(区切文字を間に挟む)
CONNECTION_ID 接続中の接続IDを確認する
CONV X進数をY進数へ変換する
COS コサインを求める
COT コタンジェントを求める
COUNT 行数を調べる
CURRENT_USER 認証時に使用されたユーザー名を確認する