I MariaDB, CURRENT_USER()
är en inbyggd funktion som returnerar kombinationen av användarnamn och värdnamn för MariaDB-kontot som servern använde för att autentisera den aktuella klienten.
Syntax
Funktionen kan anropas med eller utan parentes:
CURRENT_USER
CURRENT_USER()
Inga argument krävs eller accepteras.
Exempel
Här är ett exempel att visa:
SELECT CURRENT_USER();
Resultat:
+------------------+ | CURRENT_USER() | +------------------+ | [email protected] | +------------------+
Utan parentes
Som nämnts, CURRENT_USER()
funktion kan anropas med eller utan parentes.
Här är ett exempel utan parentes:
SELECT CURRENT_USER;
Resultat:
+------------------+ | CURRENT_USER | +------------------+ | [email protected] | +------------------+
Samma resultat.
Anonym användare
Här är ett exempel på vad som händer när du är ansluten som anonym.
Anslut med anonymous
:
mariadb --user="anonymous"
Kör CURRENT_USER
:
SELECT CURRENT_USER;
Resultat:
+--------------+ | CURRENT_USER | +--------------+ | @localhost | +--------------+
CURRENT_USER()
kontra USER()
CURRENT_USER()
funktion returnerar inte alltid samma resultat som USER()
funktion (och dess synonymer SYSTEM_USER()
och SESSION_USER()
).
Exempel:
SELECT
CURRENT_USER,
USER(),
SYSTEM_USER(),
SESSION_USER();
Resultat:
+--------------+---------------------+---------------------+---------------------+ | CURRENT_USER | USER() | SYSTEM_USER() | SESSION_USER() | +--------------+---------------------+---------------------+---------------------+ | @localhost | [email protected] | [email protected] | [email protected] | +--------------+---------------------+---------------------+---------------------+
Inga argument accepteras
Skickar eventuella argument till CURRENT_USER()
resulterar i ett fel:
SELECT CURRENT_USER(1);
Resultat:
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