create or replace function pgq.quote_fqname(i_name text) returns text as $$ -- ---------------------------------------------------------------------- -- Function: pgq.quote_fqname(1) -- -- Quete fully-qualified object name for SQL. -- -- First dot is taken as schema separator. -- -- If schema is missing, 'public' is assumed. -- -- Parameters: -- i_name - fully qualified object name. -- -- Returns: -- Quoted name. -- ---------------------------------------------------------------------- declare res text; pos integer; s text; n text; begin pos := position('.' in i_name); if pos > 0 then s := substring(i_name for pos - 1); n := substring(i_name from pos + 1); else s := 'public'; n := i_name; end if; return quote_ident(s) || '.' || quote_ident(n); end; $$ language plpgsql strict immutable;