I have created a Teradata Procedure using SYSDBA ID in Database A. I am trying to execute the procedure through a different User - USER B. The procedure creates some temporary tables in Database C. The procedure is failing saying The user does not have the CREATE TABLE access to database C.
When I execute the Create Statement from the same User - USER B through SQL Assistant, it is able to create table. Also, there is a similar procedure created with Same SysDBAID in Database A and executing through User B, which is able to create tables in Database C.
So, it seems there is some Prociedure level access rights which is missing. Can someone help me on this to resolve this issue.
By default only the creator has access to procedure. However the user can give access to other user (username) or PUBLIC which will give the access to everyone.
GRANT EXECUTE PROCEDURE ON DBNAME.Procedure_name TO PUBLIC ;