尝试调整此解决方案,但以这种方式撤销权限:
DO
$$
DECLARE
t record;
BEGIN
FOR t IN
SELECT table_schema, table_name
FROM information_schema.tables
WHERE table_schema = 'my_schema'
AND table_name LIKE 'test\_%'
LOOP
EXECUTE format('REVOKE DELETE, INSERT, UPDATE ON TABLE %I.%I FROM test;', table_schema, table_name);
END LOOP;
END;
$$ LANGUAGE plpgsql;
但是,我得到“column table_schema 不存在”。我以正确的方式接近这个吗?
使用 postgresql 9.6(法语语言环境)。
您需要引用游标循环的记录:
或使用
psql
并运行