Re: [pgbr-geral] Relacionamento entre tabelas - integer e array
On Wed, May 20, 2015 at 12:25 AM, Danilo Silva danilo.dsg.go...@gmail.com wrote: Tenho as tabela cargos e funcionários: CREATE TABLE _cargos ( car_codcargo integer[], ... ); ... CREATE TABLE _funcionarios ( fun_codfunc serial, fun_codcargo integer[] NOT NULL, ... ); ... É possível criar relacionamento entre as duas tabelas, para que seja possível somente inserir na tabela funcionario códigos de cargos que existam na tabela cargos? Não. Existiu uma discussão para implementar isso, e até mesmo um patch. Mas não foi pra frente. Você pode fazer com triggers, mas não é tão fácil quanto parece, por causa da concorrência. O melhor mesmo nesse caso seria utilizar uma tabela de ligação, modelo tradicional. Atenciosamente, -- Matheus de Oliveira Analista de Banco de Dados Dextra Sistemas - MPS.Br nível F! www.dextra.com.br/postgres ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] Relacionamento entre tabelas - integer e array
Pessoal, Tenho as tabela cargos e funcionários: CREATE TABLE _cargos ( car_codcargo integer[], car_nome text NOT NULL, CONSTRAINT _car_pk PRIMARY KEY (car_codcargo) ); INSERT INTO _cargos VALUES (1,'MECANICO'),(2,'SOLDADOR'),(3,'AUXILIAR'),(4,'VENDEDOR'),(5,'CONTADOR'); CREATE TABLE _funcionarios ( fun_codfunc serial, fun_codcargo integer[] NOT NULL, fun_nome text NOT NULL, CONSTRAINT _fun_pk PRIMARY KEY (fun_codfunc) ); INSERT INTO _funcionarios VALUES (1,ARRAY[1],'AAA'); INSERT INTO _funcionarios VALUES (2,ARRAY[1],'AAB'); INSERT INTO _funcionarios VALUES (3,ARRAY[1,2],'AAC'); É possível criar relacionamento entre as duas tabelas, para que seja possível somente inserir na tabela funcionario códigos de cargos que existam na tabela cargos? []s Danilo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral