Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- create table t1 (
- c1 varchar(10)
- );
- comment on column t1.c1 is 'foo';
- alter table t1 add column c2 varchar(20);
- select comment_text from (what?) where table_name = 't1' and column_name = 'c1'
- comment on column t1.c1 is (select ...);
- CREATE OR REPLACE FUNCTION copy_comment(varchar,int,varchar,varchar) RETURNS int AS $PROC$
- DECLARE
- src_tbl ALIAS FOR $1;
- src_col ALIAS FOR $2;
- dst_tbl ALIAS FOR $3;
- dst_col ALIAS FOR $4;
- row RECORD;
- oid INT;
- comment VARCHAR;
- BEGIN
- FOR row IN EXECUTE 'SELECT DISTINCT tableoid FROM ' || quote_ident(src_tbl) LOOP
- oid := row.tableoid;
- END LOOP;
- FOR row IN EXECUTE 'SELECT col_description(' || quote_literal(oid) || ',' || quote_literal(src_col) || ')' LOOP
- comment := row.col_description;
- END LOOP;
- EXECUTE 'COMMENT ON COLUMN ' || quote_ident(dst_tbl) || '.' || quote_ident(dst_col) || ' IS ' || quote_literal(comment);
- RETURN 1;
- END;
- $PROC$ LANGUAGE plpgsql;
- CREATE OR REPLACE FUNCTION copy_comment(varchar,int,varchar,varchar) RETURNS int AS $PROC$
- DECLARE
- src_tbl ALIAS FOR $1;
- src_col ALIAS FOR $2;
- dst_tbl ALIAS FOR $3;
- dst_col ALIAS FOR $4;
- row RECORD;
- oid INT;
- comment VARCHAR;
- BEGIN
- FOR row IN EXECUTE 'SELECT DISTINCT tableoid FROM ' || quote_ident(src_tbl) LOOP
- oid := row.tableoid;
- END LOOP;
- FOR row IN EXECUTE 'SELECT col_description(' || quote_literal(oid) || ',' || quote_literal(src_col) || ')' LOOP
- comment := row.col_description;
- END LOOP;
- EXECUTE 'COMMENT ON COLUMN ' || quote_ident(dst_tbl) || '.' || quote_ident(dst_col) || ' IS ' || quote_literal(comment);
- RETURN 1;
- END;
- $PROC$ LANGUAGE plpgsql;
- CREATE OR REPLACE FUNCTION copy_comment(varchar,int,varchar,varchar) RETURNS int AS $PROC$
- DECLARE
- src_tbl ALIAS FOR $1;
- src_col ALIAS FOR $2;
- dst_tbl ALIAS FOR $3;
- dst_col ALIAS FOR $4;
- row RECORD;
- oid INT;
- comment VARCHAR;
- BEGIN
- FOR row IN EXECUTE 'SELECT DISTINCT tableoid FROM ' || quote_ident(src_tbl) LOOP
- oid := row.tableoid;
- END LOOP;
- FOR row IN EXECUTE 'SELECT col_description(' || quote_literal(oid) || ',' || quote_literal(src_col) || ')' LOOP
- comment := row.col_description;
- END LOOP;
- EXECUTE 'COMMENT ON COLUMN ' || quote_ident(dst_tbl) || '.' || quote_ident(dst_col) || ' IS ' || quote_literal(comment);
- RETURN 1;
- END;
- $PROC$ LANGUAGE plpgsql;
Add Comment
Please, Sign In to add comment