Supongamos que se crea una tabla en PostgreSQL con un comentario sobre una columna:Ajuste del comentario de la columna a la de otra columna en PostgreSQL
create table t1 (
c1 varchar(10)
);
comment on column t1.c1 is 'foo';
Algún tiempo más tarde, decide agregar otra columna:
alter table t1 add column c2 varchar(20);
quiero mirar hacia arriba el contenido de comentario de la primera columna, y se asocian con la nueva columna:
select comment_text from (what?) where table_name = 't1' and column_name = 'c1'
el (¿qué?) va a ser una tabla de sistema, pero después de haber mirado en pgAdmin y de buscar en la web, no he aprendido su nombre.
Idealmente me gustaría ser capaz de:
comment on column t1.c1 is (select ...);
pero tengo la sensación de que está estirando las cosas un poco lejos. Gracias por cualquier idea
Actualización: en base a las sugerencias que recibí aquí, terminé escribiendo un programa para automatizar la tarea de transferir comentarios, como parte de un proceso más amplio de cambio del tipo de datos de una columna Postgresql. Puedes leer sobre eso on my blog.
Por desgracia, "comentar en la columna t1.c2 es (seleccionar col_description ((seleccionar tableoid distinto de t1), 1))" da error de sintaxis en o cerca de "(" y eso es en la primera página abierta. Entonces, no. – dland