–DROP VIEW admin.v_generate_view_ddl; /********************************************************************************************** Purpose: View to get the DDL for a view.
History: 2014-02-10 jjschmit Created 2018-01-15 pvbouwel Replace tabs and add QUOTE_IDENT for identifiers (schema and view names) **********************************************************************************************/ CREATE OR REPLACE VIEW admin.v_generate_view_ddl AS SELECT
n.nspname AS schemaname ,c.relname AS viewname ,'--DROP VIEW ' + QUOTE_IDENT(n.nspname) + '.' + QUOTE_IDENT(c.relname) + ';\n' + 'CREATE OR REPLACE VIEW ' + QUOTE_IDENT(n.nspname) + '.' + QUOTE_IDENT(c.relname) + ' AS\n' + COALESCE(pg_get_viewdef(c.oid, TRUE), '') AS ddl
FROM
pg_catalog.pg_class AS c
INNER JOIN
pg_catalog.pg_namespace AS n ON c.relnamespace = n.oid
WHERE relkind = 'v' ;