There are two sets of permissions for stored functions,
To create a function in a database, the user must have the CREATE ROUTINE privilege.
To use a function, the caller must have the EXECUTE privilege for the particular database.
To change an existing function, the user must have the ALTER ROUTINE privilege.
Permissions can be granted globally in the mysql.user table.
Permissions can also be granted at the database level in the mysql.db table.
Permissions can be granted for a specific routine in the mysql.procs_priv table.
11.3.Function | ||||
11.3.1. | Creating Functions | |||
11.3.2. | A function that takes a parameter, performs an operation using an SQL function, and returns the result | |||
11.3.3. | Single statement function | |||
11.3.4. | Nested function call | |||
11.3.5. | Using buildin function in user-defined function | |||
11.3.6. | Changing and Removing Functions | |||
11.3.7. | To remove a stored function, use the DROP command | |||
11.3.8. | Create a procedure for 'READS SQL DATA' | |||
11.3.9. | ALTER PROCEDURE and ALTER FUNCTION Syntax | |||
11.3.10. | DROP PROCEDURE and DROP FUNCTION Syntax | |||
11.3.11. | Function Permissions |