No MariaDB,
USER()
é uma função interna que retorna o nome de usuário e o nome do host MariaDB atuais, fornecidos ao autenticar no MariaDB. Sintaxe
A sintaxe fica assim:
USER()
Nenhum argumento é necessário ou aceito.
Exemplo
Segue um exemplo para demonstrar:
SELECT USER();
Resultado:
+------------------+ | USER() | +------------------+ | [email protected] | +------------------+
USER()
vs CURRENT_USER()
O
USER()
função nem sempre retorna o mesmo resultado que o CURRENT_USER()
função. Por exemplo, se nos conectarmos usando
anonymous
:mariadb --user="anonymous"
Em seguida, execute
USER()
e CURRENT_USER()
:SELECT
USER(),
CURRENT_USER;
Resultado:
+---------------------+--------------+ | USER() | CURRENT_USER | +---------------------+--------------+ | [email protected] | @localhost | +---------------------+--------------+
Nenhum argumento é aceito
Passando quaisquer argumentos para
USER()
resulta em um erro:SELECT USER(123);
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 '123)' at line 1
Declarações usando o
USER()
função ou um de seus sinônimos (SYSTEM_USER()
e SESSION_USER()
) não são seguros para replicação em nível de instrução.