I need to know how many records are in a specific schema of a database.
I've tried with a function but there are still problems
Can you give me some hints :
-- Function: count_records(myschema varchar)
-- DROP FUNCTION count_records("varchar");
CREATE OR REPLACE FUNCTION count_records("varchar") RETURNS int8 AS $BODY$DECLARE anzahl bigint := 0; summe bigint := 0; ds RECORD; tabellenname varchar(100); BEGIN FOR ds IN select * from pg_tables where schemaname = myschema LOOP
tabellenname := quote_ident(ds.schemaname) || '.' || quote_ident(ds.tablename); EXECUTE 'SELECT count(*) FROM ' || tabellenname INTO quote_ident(anzahl); summe := summe + anzahl; END LOOP; return summe; END;$BODY$ LANGUAGE 'plpgsql' VOLATILE; ALTER FUNCTION count_records("varchar") OWNER TO postgres;