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

MariaDB USER() Forklaret

I MariaDB, USER() er en indbygget funktion, der returnerer det aktuelle MariaDB-brugernavn og værtsnavn, givet ved godkendelse til MariaDB.

Syntaks

Syntaksen ser sådan ud:

USER()

Ingen argumenter er påkrævet eller accepteret.

Eksempel

Her er et eksempel til demonstration:

SELECT USER();

Resultat:

+------------------+
| USER()           |
+------------------+
| [email protected] |
+------------------+

USER() vs CURRENT_USER()

USER() funktion returnerer ikke altid det samme resultat som CURRENT_USER() funktion.

For eksempel, hvis vi forbinder ved hjælp af anonymous :

mariadb --user="anonymous"

Kør derefter USER() og CURRENT_USER() :

SELECT 
    USER(),
    CURRENT_USER;

Resultat:

+---------------------+--------------+
| USER()              | CURRENT_USER |
+---------------------+--------------+
| [email protected] | @localhost   |
+---------------------+--------------+

Ingen argumenter accepteres

Sender eventuelle argumenter til USER() resulterer i en fejl:

SELECT USER(123);

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 '123)' at line 1

Udsagn ved hjælp af USER() funktion eller et af dets synonymer (SYSTEM_USER() og SESSION_USER() ) er ikke sikre til replikering på sætningsniveau.


  1. Hent et billede gemt som BLOB på en MYSQL DB

  2. RMAN Backup kommandoer

  3. Er PL/SQL-variabler i markører effektivt det samme som bindeparametre?

  4. SESSIONTIMEZONE Funktion i Oracle