Er zijn verschillende methoden om de naam van de huidige gebruiker in MySQL te achterhalen. Er kunnen veel redenen zijn waarom we willen weten wie de huidige gebruiker is. Hier is een lijst van de weinige van dergelijke redenen.
- Aangepaste code die we willen gebruiken op basis van de reden.
- De machtigingen controleren op basis van de gebruiker.
- De naam van de gebruiker invoegen in de controletabel.
- Speciaal bericht weergeven op basis van de ingelogde gebruiker.
- Een speciale logica/code uitvoeren op basis van de ingelogde gebruiker.
Methode 1: Gebruik van systeemfuncties
SELECT user(); SELECT current_user();
Beide bovenstaande SELECT-instructies retourneren de naam van de huidige gebruiker, die de bovenstaande instructies uitvoert.
Methode 2: Gebruik van systeemtabel
SELECT * from mysql.user;
Het bovenstaande geeft een overzicht van alle gebruikers die op de server zijn geregistreerd. Het zal ook een lijst maken van verschillende niveaus van privileges voor de gebruikers.
Om alleen de informatie over de huidige gebruiker te krijgen, kunt u gebruik maken van
SELECT * from mysql.user WHERE user() like concat(user,'%');
U kunt ook synoniemfuncties van user() gebruiken
SELECT session_user(); SELECT system_user();
Beide bovenstaande zullen het resultaat retourneren dat ook het resultaat is van SELECT user().
Als u een vergelijkbare login gebruikt in uw applicatie of bedrijf, zou ik graag willen weten wat de zakelijke behoefte hieraan is. Laat een reactie achter.