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

MariaDB SESSION_USER() Objaśnienie

W MariaDB, SESSION_USER() jest synonimem USER() funkcjonować. Zwraca bieżącą nazwę użytkownika MariaDB i nazwę hosta, podaną podczas uwierzytelniania w MariaDB.

Składnia

Składnia wygląda tak:

SESSION_USER()

Żadne argumenty nie są wymagane ani akceptowane.

Przykład

Oto przykład do zademonstrowania:

SELECT SESSION_USER();

Wynik:

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

SESSION_USER() vs CURRENT_USER()

Jest też inna funkcja o nazwie CURRENT_USER() to robi podobną rzecz. Jednak nie zawsze zwraca ten sam wynik, co SESSION_USER() .

Na przykład, jeśli łączymy się za pomocą anonymous :

mariadb --user="anonymous"

Następnie uruchom SESSION_USER() i CURRENT_USER() :

SELECT 
    SESSION_USER(),
    CURRENT_USER;

Wynik:

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

Jeśli jednak wrócimy do poprzedniej sesji (w oryginalnym oknie terminala), każda funkcja zwróci te same wyniki:

SELECT 
    SESSION_USER(),
    CURRENT_USER;

Wynik:

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

Żadne argumenty nie są akceptowane

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

SELECT SESSION_USER(123);

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

Wyrażenia przy użyciu SESSION_USER() funkcja (lub USER() i SYSTEM_USER() ) nie są bezpieczne dla replikacji na poziomie instrukcji.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Buforowanie zapytań MySQL i MariaDB za pomocą ProxySQL i ClusterControl

  2. Zrozumienie szczegółowości blokad w MySQL

  3. Unikanie blokady dostawcy bazy danych dla MySQL lub MariaDB

  4. POKAŻ TABELE w MariaDB

  5. Ciągi formatu daty MariaDB