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() | +------------------+ | example@sqldat.com | +------------------+
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 | +------------------+ | example@sqldat.com | +------------------+
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 | example@sqldat.com | example@sqldat.com | example@sqldat.com | +--------------+---------------------+---------------------+---------------------+
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