On 09-03-2016 09:10, Paulo wrote:
> Alguém pode dar uma dica de como ao duplicar e já trazer a chave
> primária da tabela origem.
>
Para copiar o esquema você pode usar a cláusula LIKE. Veja:
euler@vostro:/tmp$ psql -X
psql (9.5.1)
Digite "help" para ajuda.
euler=# \d foo
Tabela "public.foo"
Coluna | Tipo | Modificadores
--------+---------+---------------------------------------------------------
a | integer | não nulo valor padrão de nextval('foo_a_seq'::regclass)
b | text | não nulo
c | integer | não nulo
d | xml |
Índices:
"foo_pkey" PRIMARY KEY, btree (a)
"fooi" UNIQUE, btree (c)
euler=# create table bar (like foo including all);
CREATE TABLE
euler=# \d bar
Tabela "public.bar"
Coluna | Tipo | Modificadores
--------+---------+---------------------------------------------------------
a | integer | não nulo valor padrão de nextval('foo_a_seq'::regclass)
b | text | não nulo
c | integer | não nulo
d | xml |
Índices:
"bar_pkey" PRIMARY KEY, btree (a)
"bar_c_idx" UNIQUE, btree (c)
A cláusula LIKE permite escolher o que incluir ou excluir ao copiar o
esquema (vide opções no manual). Note que a sequência é a mesma. Os
dados podem ser copiados em seguida com INSERT ou COPY.
--
Euler Taveira Timbira - http://www.timbira.com.br/
PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral