删除 postgresql 循环中的括号

Remove parenthesis in postgresql loop

有人可以帮助我理解为什么我在架构名称 nspname 周围加了括号吗? And/or,一种删除它的方法,所以循环会起作用吗?

DO $$
DECLARE
    views_ CURSOR FOR
        SELECT nspname
        FROM pg_catalog.pg_namespace
        WHERE nspname LIKE '%scemanames%';
BEGIN
    FOR nspname IN views_ LOOP
        EXECUTE 'INSERT INTO forkert_ejendom_roert SELECT * FROM ' || nspname || '.viewname';
        -- Do something with nbRow
    END LOOP;
END$$;

我得到的输出是:

ERROR: syntax error at or near ")"
LINE 1: ...m_roert SELECT * FROM ('schemanames).bbr_punk...
                                     ^
QUERY: INSERT INTO forkert_ejendom_roert SELECT * FROM (name of the schema).viewname 
CONTEXT: PL/pgSQL function inline_code_block line 9 at EXECUTE 

********** Error **********
ERROR: syntax error at or near ")" SQL state: 42601 
Context: PL/pgSQL function inline_code_block line 9 at EXECUTE

循环变量是一条记录(实际包含单列),try:

    FOR rec IN views_ LOOP
        EXECUTE 'INSERT INTO forkert_ejendom_roert SELECT * FROM ' || rec.nspname || '.viewname';