sql >> Database teknologi >  >> RDS >> Mysql

MySQL – Forskellige metoder til at kende nuværende bruger

Der er forskellige metoder til at kende navnet på den aktuelle bruger i MySQL. Der kan være mange grunde til, at vi gerne vil vide, hvem der er den nuværende bruger. Her er en liste over de få af sådanne grunde.

  1. Tilpasset kode, som vi ønsker at køre baseret på årsagen.
  2. Tjekker tilladelserne baseret på brugeren.
  3. Indsættelse af navnet på brugeren i revisionstabellen.
  4. Viser speciel besked baseret på login-brugeren.
  5. Udførelse af en speciel logik/kode baseret på den loggede bruger.

Metode 1: Brug af systemfunktioner

SELECT user();
SELECT current_user();

Begge ovenstående SELECT-sætninger returnerer navnet på den aktuelle bruger, som udfører ovenstående sætninger.

Metode 2: Brug af systemtabel

SELECT * from mysql.user;

Ovenstående viser alle de brugere, der er registreret på serveren. Den vil også vise forskellige niveauer af privilegier for brugerne.

For kun at få oplysninger om den aktuelle bruger, kan du bruge

SELECT * from mysql.user WHERE user() like concat(user,'%');

Du kan også bruge synonymfunktioner til user()

SELECT session_user();
SELECT system_user();

Begge ovenstående vil returnere resultatet, som også er resultatet af SELECT user().

Hvis du bruger et lignende login i din applikation eller virksomhed, vil jeg gerne vide, hvad virksomhedens behov er for det samme. Skriv venligst en kommentar.


  1. Få standardværdierne for tabelkolonner i Postgres?

  2. Sådan får du den aktuelle dato (uden tid) i T-SQL

  3. Beregn løbende total / løbende balance

  4. Hvordan MINDST() virker i MariaDB