I MariaDB, CURRENT_USER() er en indbygget funktion, der returnerer kombinationen af brugernavn og værtsnavn for MariaDB-kontoen, som serveren brugte til at godkende den aktuelle klient.
Syntaks
Funktionen kan kaldes med eller uden parentes:
CURRENT_USER
CURRENT_USER() Ingen argumenter er påkrævet eller accepteret.
Eksempel
Her er et eksempel til demonstration:
SELECT CURRENT_USER(); Resultat:
+------------------+ | CURRENT_USER() | +------------------+ | example@sqldat.com | +------------------+
Uden parenteser
Som nævnt er CURRENT_USER() funktion kan kaldes med eller uden parentes.
Her er et eksempel uden parentes:
SELECT CURRENT_USER; Resultat:
+------------------+ | CURRENT_USER | +------------------+ | example@sqldat.com | +------------------+
Samme resultat.
Anonym bruger
Her er et eksempel på, hvad der sker, når du er tilsluttet som anonym.
Forbind med anonymous :
mariadb --user="anonymous"
Kør CURRENT_USER :
SELECT CURRENT_USER; Resultat:
+--------------+ | CURRENT_USER | +--------------+ | @localhost | +--------------+
CURRENT_USER() vs USER()
CURRENT_USER() funktion returnerer ikke altid det samme resultat som USER() funktion (og dens synonymer SYSTEM_USER() og SESSION_USER() ).
Eksempel:
SELECT
CURRENT_USER,
USER(),
SYSTEM_USER(),
SESSION_USER(); Resultat:
+--------------+---------------------+---------------------+---------------------+ | CURRENT_USER | USER() | SYSTEM_USER() | SESSION_USER() | +--------------+---------------------+---------------------+---------------------+ | @localhost | example@sqldat.com | example@sqldat.com | example@sqldat.com | +--------------+---------------------+---------------------+---------------------+
Ingen argumenter accepteres
Sender eventuelle argumenter til CURRENT_USER() resulterer i en fejl:
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