There is only one permission that may be granted on a procedure, and that is the EXECUTE permission to execute (or CALL) the procedure.
Permission to execute stored procedures may be granted by the DBA or PERMS ADMIN or by the owner of the procedure (the user ID that created the procedure).
The method for granting permissions to execute a procedure is similar to that for granting permissions on tables and views, discussed in “Granting permissions on tables and views”.
You can grant M_Haneef permission to execute a procedure named my_procedure, as follows:
Connect to the database as a user with DBA or PERMS ADMIN authority or as owner of my_procedure procedure.
Execute the SQL statement:
GRANT EXECUTE ON my_procedure TO M_Haneef
Procedures execute with the permissions of their owner. Any procedure that updates information on a table will execute successfully only if the owner of the procedure has UPDATE permissions on the table.
As long as the procedure owner does have the proper permissions, the procedure will execute successfully when called by any user assigned permission to execute it, whether or not they have permissions on the underlying table. You can use procedures to allow users to carry out well-defined activities on a table, without having any general permissions on the table.
One way to grant a user permissions on a table in Sybase Central is as follows:
Granting user permissions on procedures in Sybase Central
Connect to the database.
Click the Users & Groups folder, and locate the user you want to grant permissions to.
Right-click the user, and select Copy from the popup menu.
Locate the procedure you want to allow the user to execute, in the Stored Procedures folder.
Click the procedure, and choose Edit > Paste from the main menu to grant permissions.
For more information, see the Sybase Central online Help.