我有一个fields表来存储其他表的列信息:
CREATE TABLE public.fields (
schema_name varchar(100),
table_name varchar(100),
column_text varchar(100),
column_name varchar(100),
column_type varchar(100) default 'varchar(100)',
column_visible boolean
);
Run Code Online (Sandbox Code Playgroud)
我想创建一个函数来获取特定表的数据.刚试过这样的事:
create or replace function public.get_table(schema_name text,
table_name text,
active boolean default true)
returns setof record as $$
declare
entity_name text default schema_name || '.' || table_name;
r record;
begin
for r in EXECUTE 'select * from ' || entity_name loop
return next r;
end loop;
return;
end
$$
language plpgsql;
Run Code Online (Sandbox Code Playgroud)
使用此功能,我必须在调用它时指定列!
select * from public.get_table('public', 'users') as …Run Code Online (Sandbox Code Playgroud)