sql >> Database teknologi >  >> RDS >> MariaDB

MariaDB CURRENT_USER() Forklaret

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()   |
+------------------+
| [email protected] |
+------------------+

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     |
+------------------+
| [email protected] |
+------------------+

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   | [email protected] | [email protected] | [email protected] |
+--------------+---------------------+---------------------+---------------------+

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

  1. Hvordan ændres database_url på heroku?

  2. pgDash Diagnostics Alternatives - PostgreSQL Query Management med ClusterControl

  3. SQL genkender ikke kolonnealias i where-sætning

  4. SQL Server Change Recovery Model