Oi pessoal,
Possuo uma aplicação comercial em Linux que inicialmente foi desenvolvida com C++, e o seu BD em PostgreSQL.
Agora estou desenvolvendo algumas telas do sistema de retaguarda, e para isso estou usando Java + Hibernate.
A minha dúvida é a seguinte: já possuo o BD com todas as tabelas e seus dados, mas toda vez que inicio a aplicação o Hibernate insiste em criar as FOREIGN KEYS nas minhas tabelas, mas as mesmas já existem, ou seja, fico com FOREIGN KEYS CONSTRAINTS duplicadas.
Observem abaixo a tabela original (antes de rodar a aplicação em Java que estou desenvolvendo):
db_multuspdv=# \d tb_produto
Table "public.tb_produto"
Column | Type | Modifiers
-------------------------------+-----------------------+-----------------------------------------------------
id | integer | not null default nextval('tb_produto_id_seq'::text)
prod_descricao | character varying(50) | not null
prod_descricao_resumida | character varying(24) |
prod_marca | smallint |
prod_secao | smallint | not null
prod_venda_medida | numeric(7,3) |
prod_venda_unidade_medida | smallint |
prod_preco | numeric(9,2) |
prod_estoque | integer |
prod_vasilhame_medida | numeric(7,3) |
prod_vasilhame_unidade_medida | smallint |
prod_tributo | smallint | not null
Indexes:
"tb_produto_pkey" primary key, btree (id)
Foreign-key constraints:
"tb_produto_marca_fkey" FOREIGN KEY (prod_marca) REFERENCES tb_marca(id)
"tb_produto_unidade_medida_fkey" FOREIGN KEY (prod_venda_unidade_medida) REFERENCES tb_unidade_medida(id)
"tb_produto_secao_fkey" FOREIGN KEY (prod_secao) REFERENCES tb_secao(id)
"tb_produto_vasilhame_unidade_medida_fkey" FOREIGN KEY (prod_vasilhame_unidade_medida) REFERENCES tb_unidade_medida(id)
"tb_produto_tributo_fkey" FOREIGN KEY (prod_tributo) REFERENCES tb_tributo(id)
E agora, depois que executo a aplicação (observem a última linha da listagem abaixo):
db_multuspdv=# \d tb_produto
Table "public.tb_produto"
Column | Type | Modifiers
-------------------------------+-----------------------+-----------------------------------------------------
id | integer | not null default nextval('tb_produto_id_seq'::text)
prod_descricao | character varying(50) | not null
prod_descricao_resumida | character varying(24) |
prod_marca | smallint |
prod_secao | smallint | not null
prod_venda_medida | numeric(7,3) |
prod_venda_unidade_medida | smallint |
prod_preco | numeric(9,2) |
prod_estoque | integer |
prod_vasilhame_medida | numeric(7,3) |
prod_vasilhame_unidade_medida | smallint |
prod_tributo | smallint | not null
Indexes:
"tb_produto_pkey" primary key, btree (id)
Foreign-key constraints:
"tb_produto_marca_fkey" FOREIGN KEY (prod_marca) REFERENCES tb_marca(id)
"tb_produto_unidade_medida_fkey" FOREIGN KEY (prod_venda_unidade_medida) REFERENCES tb_unidade_medida(id)
"tb_produto_secao_fkey" FOREIGN KEY (prod_secao) REFERENCES tb_secao(id)
"tb_produto_vasilhame_unidade_medida_fkey" FOREIGN KEY (prod_vasilhame_unidade_medida) REFERENCES tb_unidade_medida(id)
"tb_produto_tributo_fkey" FOREIGN KEY (prod_tributo) REFERENCES tb_tributo(id)
"fked9736284376bb54" FOREIGN KEY (prod_marca) REFERENCES tb_marca(id)
Como faço para desabilitar a criação das chaves estrangeiras?
Abraços,
Paulo Oliveira