No MariaDB,
CURRENT_USER()
é uma função interna que retorna a combinação de nome de usuário e nome de host para a conta MariaDB que o servidor usou para autenticar o cliente atual. Sintaxe
A função pode ser chamada com ou sem os parênteses:
CURRENT_USER
CURRENT_USER()
Nenhum argumento é necessário ou aceito.
Exemplo
Segue um exemplo para demonstrar:
SELECT CURRENT_USER();
Resultado:
+------------------+ | CURRENT_USER() | +------------------+ | [email protected] | +------------------+
Sem parênteses
Como mencionado, o
CURRENT_USER()
A função pode ser chamada com ou sem parênteses. Aqui está um exemplo sem parênteses:
SELECT CURRENT_USER;
Resultado:
+------------------+ | CURRENT_USER | +------------------+ | [email protected] | +------------------+
Mesmo resultado.
Usuário anônimo
Aqui está um exemplo do que acontece quando conectado como anônimo.
Conecte-se usando
anonymous
:mariadb --user="anonymous"
Execute
CURRENT_USER
:SELECT CURRENT_USER;
Resultado:
+--------------+ | CURRENT_USER | +--------------+ | @localhost | +--------------+
CURRENT_USER()
vs USER()
O
CURRENT_USER()
função nem sempre retorna o mesmo resultado que USER()
função (e seus sinônimos SYSTEM_USER()
e SESSION_USER()
). Exemplo:
SELECT
CURRENT_USER,
USER(),
SYSTEM_USER(),
SESSION_USER();
Resultado:
+--------------+---------------------+---------------------+---------------------+ | CURRENT_USER | USER() | SYSTEM_USER() | SESSION_USER() | +--------------+---------------------+---------------------+---------------------+ | @localhost | [email protected] | [email protected] | [email protected] | +--------------+---------------------+---------------------+---------------------+
Nenhum argumento é aceito
Passando quaisquer argumentos para
CURRENT_USER()
resulta em um erro:SELECT CURRENT_USER(1);
Resultado:
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