Privileges required to create a routine

A user must have the following privileges to issue a CREATE FUNCTION or CREATE PROCEDURE statement that registers a UDR in the database:
  • Database-level privilege
  • Language-level privilege
  • EXTEND role privilege
Notes:
  1. If the IFX_EXTEND_ROLE configuration parameter is set to 1 or On and the database system administrator (DBSA) has used the GRANT statement to grant the EXTEND role to a user, that user can create, alter, or drop DataBlade® modules or external UDRs.
  2. If this feature is enabled but a user has not been granted the EXTEND role, that user cannot create, alter, or drop DataBlade modules or external UDRs.
  3. If the IFX_EXTEND_ROLE configuration parameter is set to 0 or Off, the EXTEND role is not operational and any user holding the Resource privilege on the database can register external routines.
  4. Whether this feature is operational or not, however, the EXTEND role has no effect on creating or dropping UDRs that are written in the SPL language. For more information, see Registering a user-defined routine.

After you register the UDR, you can assign routine-level privileges. For information about how to assign privileges, refer to the GRANT statement in the HCL OneDB™ Guide to SQL: Syntax.