如何执行pgAdmin4中生成的查询语句?

时间:2017-08-15 01:36:39

标签: postgresql pgadmin-4

我有以下查询,它在pgAdmin4的“数据输出”字段中生成ALTER TABLE语句列表。我可以复制&将它们粘贴回查询窗格并在那里执行。

select 'ALTER TABLE ' || table_name || ' OWNER TO myuser;' from information_schema.tables where table_schema = 'public';

如何执行生成的语句而无需复制&粘贴它们?

1 个答案:

答案 0 :(得分:1)

您可以使用此功能。

CREATE OR REPLACE FUNCTION change_permission_table() 
RETURNS VOID AS $$
DECLARE
    rec text;
BEGIN
    FOR rec IN SELECT 'ALTER TABLE ' || table_name || ' OWNER TO maz;' FROM information_schema.tables WHERE table_schema = 'public'
    LOOP 
      EXECUTE rec;
    END LOOP;
END;
$$ LANGUAGE plpgsql;

-- Run the function to change the permission
SELECT change_permission_table()