为了在 redshift 中删除用户,我必须更改该用户的所有权限和所有权。
然而,用户在 redshift 中也拥有用户定义的函数。
如何更改此用户定义函数的所有者?
[ ALTER FUNCTION f_.. OWNER TO xyz ]
没有用..
如何检查使用此功能的位置?
最佳答案
实际上,R.Zieglt 的解决方案对我不起作用。我需要指定输入参数 类型 ,而不是名称。
这是我的示例:
ALTER FUNCTION udf_name (text) OWNER TO admin;
笔记
如果您不确定参数类型,您可以查询
pg_proc
表,通过 proname
过滤:SELECT proargtypes FROM pg_proc WHERE proname ILIKE udf_name;
然后,您可以使用
pg_type
表并通过 typname
过滤将数字类型映射到其名称:SELECT * FROM pg_type WHERE typelem = 23;
(取自 Get a list of UDFs in Redshift 。)
关于sql - redshift 改变 udf 更改所有者,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40606574/