SQL CURRENT_USER
The SQL CURRENT_USER
function returns the name of the database user executing the query. It is often used to determine the privileges and roles of the currently connected user.
In this tutorial, we will explore the CURRENT_USER
function, its syntax, and practical examples demonstrating its usage in SQL.
Syntax of SQL CURRENT_USER
The basic syntax of the CURRENT_USER
function is:
SELECT CURRENT_USER;
Alternatively, in some SQL databases like MySQL, you can also use:
SELECT CURRENT_USER();
Explanation:
- The function retrieves the user name associated with the current session.
- It may be useful for checking the privileges of the user executing queries.
Step-by-Step Examples Using SQL CURRENT_USER
1. Retrieving the Current User
To check the currently logged-in user in MySQL, execute:
SELECT CURRENT_USER();
Example Output:

Explanation:
- The result shows that the current session is being executed by the user
root
with access vialocalhost
. - This function is useful for debugging permissions and access levels.
2. Checking User Privileges Using CURRENT_USER
We can check the privileges using CURRENT_USER
along with SHOW GRANTS
in MySQL.
SHOW GRANTS FOR CURRENT_USER();
Example Output:

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROU...
GRANT APPLICATION_PASSWORD_ADMIN,AUDIT_ABORT_EXEMPT,AUDIT_ADMIN,AUTHENTICATION_POLICY_ADMIN,BACKUP_ADMIN,BINLOG_ADMIN,BINLOG_ENCRYPTION_ADMIN,CLONE_ADMIN,CONNECTION_ADMIN,ENCRYPTION_KEY_ADMIN,FIREWALL_EXEMPT,FLUSH_OPTIMIZER_COSTS,FLUSH_STATUS,FLUSH_TABLE...
GRANT PROXY ON ``@`` TO `root`@`localhost` WITH GRANT OPTION
Explanation:
- The output shows that current user has
SELECT
,INSERT
,UPDATE
, and other privileges on the databasecompany
. - This function helps administrators verify user permissions dynamically.
Conclusion
In this SQL CURRENT_USER
function tutorial, we covered:
- The syntax and usage of
CURRENT_USER
in SQL. - How to retrieve the current database user executing a query.
- How to check privileges assigned to the current user.
Using CURRENT_USER
helps database administrators manage user authentication and security effectively.