Redshift赠款-以编程方式进行

问题描述

我是Redshift领域的新手,但不是数据库本身。我正在尝试找出一种以编程方式在我的redshift集群中重新发放赠款的方法。早期就达成共识,已被授予对模式的访问权限的用户将根据其工作角色和区域来进行选择或dml访问。我想做类似的事情,但是似乎无法在我的RS集群中进行编译。群集是v1.0.18228

CREATE OR REPLACE FUNCTION adminscripts.update_groups(p_schema varchar)
        LANGUAGE plpgsql
        VOLATILE
AS $function$    
      DECLARE 
        v_schema_sel_gro varchar(100) := p_schema||'_sel_group';
        v_schema_dml_gro varchar(100) := p_schema||'_dml_group';
        v_schema_adm_gro varchar(100) := p_schema||'_adm_group';
        
        v_gro_exists int; 
        db          VARCHAR(100); 
        endtime     datetime; 
        SQL text; 
        unload_id    INT; 
        unload_time timestamp; 
        
BEGIN 

    select count(*) into v_gro_exists
    from pg_group where groname = v_schema_sel_gro ;
    
    IF v_gro_exists = 0 THEN 
        create group v_schema_sel_gro ;
    ELSE
        RAISE info 'SELECT Group already exits '; 
    END IF;
    
    GRANT USAGE ON SCHEMA p_schema TO GROUP v_schema_sel_gro;
    GRANT SELECT ON ALL TABLES IN SCHEMA p_schema TO GROUP v_schema_sel_gro;
    ALTER DEFAULT PRIVILEGES IN SCHEMA p_schema GRANT SELECT ON TABLES TO GROUP v_schema_sel_gro;
    
END; 
     $function$
;

任何帮助都会很棒!预先感谢。

Jeremy

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)