MariaDB
 sql >> Baza danych >  >> RDS >> MariaDB

MariaDB CURRENT_USER() Objaśnienie

W MariaDB, CURRENT_USER() to wbudowana funkcja, która zwraca kombinację nazwy użytkownika i nazwy hosta dla konta MariaDB, którego serwer używał do uwierzytelniania bieżącego klienta.

Składnia

Funkcję można wywołać z nawiasami lub bez:

CURRENT_USER
CURRENT_USER()

Żadne argumenty nie są wymagane ani akceptowane.

Przykład

Oto przykład do zademonstrowania:

SELECT CURRENT_USER();

Wynik:

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

Bez nawiasów

Jak wspomniano, CURRENT_USER() funkcja może być wywołana z nawiasami lub bez.

Oto przykład bez nawiasów:

SELECT CURRENT_USER;

Wynik:

+------------------+
| CURRENT_USER     |
+------------------+
| [email protected] |
+------------------+

Ten sam wynik.

Anonimowy użytkownik

Oto przykład tego, co się dzieje, gdy połączenie jest anonimowe.

Połącz używając anonymous :

mariadb --user="anonymous"

Uruchom CURRENT_USER :

SELECT CURRENT_USER;

Wynik:

+--------------+
| CURRENT_USER |
+--------------+
| @localhost   |
+--------------+

CURRENT_USER() vs USER()

CURRENT_USER() funkcja nie zawsze zwraca ten sam wynik co USER() funkcja (i jej synonimy SYSTEM_USER() i SESSION_USER() ).

Przykład:

SELECT 
    CURRENT_USER,
    USER(),
    SYSTEM_USER(),
    SESSION_USER();

Wynik:

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

Żadne argumenty nie są akceptowane

Przekazywanie dowolnych argumentów do CURRENT_USER() powoduje błąd:

SELECT CURRENT_USER(1);

Wynik:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak połączyć się z AWS MySQL / MariaDB RDS lub EC2 Database z MySQL WorkBench?

  2. MariaDB CURRENT_TIMESTAMP() Objaśnienie

  3. Radzenie sobie z problemami z replikacją MySQL za pomocą ClusterControl

  4. ClusterControl CMON HA dla wysokiej dostępności rozproszonej bazy danych — część druga (konfiguracja dostępu GUI)

  5. Jak zapewnić wysoką dostępność bazy danych MySQL lub MariaDB w AWS i Google Cloud?