Dans MariaDB, CURRENT_USER() est une fonction intégrée qui renvoie la combinaison du nom d'utilisateur et du nom d'hôte pour le compte MariaDB que le serveur a utilisé pour authentifier le client actuel.
Syntaxe
La fonction peut être appelée avec ou sans les parenthèses :
CURRENT_USER
CURRENT_USER() Aucun argument n'est requis ou accepté.
Exemple
Voici un exemple pour illustrer :
SELECT CURRENT_USER(); Résultat :
+------------------+ | CURRENT_USER() | +------------------+ | example@sqldat.com | +------------------+
Sans parenthèses
Comme mentionné, le CURRENT_USER() La fonction peut être appelée avec ou sans parenthèses.
Voici un exemple sans parenthèses :
SELECT CURRENT_USER; Résultat :
+------------------+ | CURRENT_USER | +------------------+ | example@sqldat.com | +------------------+
Même résultat.
Utilisateur anonyme
Voici un exemple de ce qui se passe lorsque vous êtes connecté en tant qu'anonyme.
Connectez-vous en utilisant anonymous :
mariadb --user="anonymous"
Exécutez CURRENT_USER :
SELECT CURRENT_USER; Résultat :
+--------------+ | CURRENT_USER | +--------------+ | @localhost | +--------------+
CURRENT_USER() vs USER()
Le CURRENT_USER() La fonction ne renvoie pas toujours le même résultat que USER() fonction (et ses synonymes SYSTEM_USER() et SESSION_USER() ).
Exemple :
SELECT
CURRENT_USER,
USER(),
SYSTEM_USER(),
SESSION_USER(); Résultat :
+--------------+---------------------+---------------------+---------------------+ | CURRENT_USER | USER() | SYSTEM_USER() | SESSION_USER() | +--------------+---------------------+---------------------+---------------------+ | @localhost | example@sqldat.com | example@sqldat.com | example@sqldat.com | +--------------+---------------------+---------------------+---------------------+
Aucun argument n'est accepté
Passer tous les arguments à CURRENT_USER() génère une erreur :
SELECT CURRENT_USER(1); Résultat :
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