sql >> Databasteknik >  >> RDS >> MariaDB

MariaDB CURRENT_USER() Förklarad

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

  1. Native Library sqljdbc_auth.dll har redan laddats i en annan klassladdare

  2. Hur SHOWPLAN_XML fungerar i SQL Server

  3. MySQL 8.0 - Klienten stöder inte autentiseringsprotokoll som begärs av servern; överväg att uppgradera MySQL-klienten

  4. En djupgående titt på databasindexering