CURRENT_USER( )
CURRENT_USER関数を使用することで認証時に使用されたユーザー名を調べることができます。
mysql> SELECT CURRENT_USER( ); +-----------------+ | CURRENT_USER( ) | +-----------------+ | root@localhost | +-----------------+ 1 row in set (0.00 sec)
通常のユーザーである場合、このCURRENT_USER関数はUSER関数と同じ結果を返します。
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」を指定し、匿名ユーザーとしてログインした場合の例です。
mysql> SELECT USER( ), CURRENT_USER( ); +-------------------+-----------------+ | USER( ) | CURRENT_USER( ) | +-------------------+-----------------+ | tokumei@localhost | @localhost | +-------------------+-----------------+ 1 row in set (0.00 sec)
CEIL | 小数点以下を切り上げる |
CEILING | 小数点以下を切り上げる |
CHAR | 文字コードを文字に変換する |
CHAR_LENGTH | 文字列の文字数を調べる |
COALESCE | リストの中で最初に出現するNULL以外の要素を調べる |
CONCAT | 文字列を結合する |
CONCAT_WS | 文字列を結合する(区切文字を間に挟む) |
CONNECTION_ID | 接続中の接続IDを確認する |
CONV | X進数をY進数へ変換する |
COS | コサインを求める |
COT | コタンジェントを求める |
COUNT | 行数を調べる |
CURRENT_USER | 認証時に使用されたユーザー名を確認する |