Skip to content
Advertisement

How can i grant an execute statment

I want to grant TRIGGERS, FUNCTIONS and PROCEDURES to a role. I have the code to do it with procedure but with triggers and functions it not work.

Advertisement

Answer

User owns tables, functions and procedures. That user created a role and wanted to grant execute on various objects to the role.

  • for triggers, it doesn’t make sense – they fire upon certain action on the table they are created on. Therefore, you’d grant privileges on the table, not on the trigger

  • for functions and procedures, you’d grant execute privilege on exact functions and procedures (not for all of them in a single statement), e.g.

What you posted (grant execute any procedure) is a system privilege; that’s kind of dangerous; are you sure you want to let level1 execute absolutely any procedure within the database?

Also, there’s no separate grant for functions; in this context, they are considered to be procedures so execute any procedure affects functions as well.

User contributions licensed under: CC BY-SA
4 People found this is helpful
Advertisement