GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

E possivel criar um formulário com dois bancos de dados usando o mesmo id auto increment

Tags: #<Tag:0x00007f22d8129d58> #<Tag:0x00007f22d8129c18> #<Tag:0x00007f22d8129a60>

Bom noite comunidade, me pergunto se e possivel criar um formulario que faz um insert em duas tabelas usando o mesmo Id auto increment da primeira tabela, exemplo:

1° tabela Existem o campos ID_Especie Nome_Especie e Origem_Especie
2° tabela iria usar o mesmo insert da primeira pegando somente ID_Especie contendo nela os seguintes campos ID_Especie, Caracteristicas1_Especie, Caracteristicas2_Especie Caracteristicas3_Especie.

obrigado, se não entenderem a explicam por favo perguntem!

Pelo que entendi, vc modelou uma especialização de especie para caracteristica especie, fazendo uma relação 1:1 (mesma PK).

Acho que o mysql já consegue resolver o mesmo ID nesse caso. Deu algum erro qdo vc tentou inserir nessas tabelas?

Outra pergunta: na 2a tabela, o ID_Especie é FK do ID_Especie da 1a tabela?

sim quero que a primeira tabela e a segunta tenha a mesma PK, ja respondendo a 2° pergunta.

Eu não cheguei a densenvolver, queria saber se e possivel, pois não entendo muito sobre o assunto.

Se vc modelar as tabelas como especialização, deve funcionar tranquilamente.

Pode me da um exemplo por favo?

Veja a imagem:

Essa é uma especialização onde o ID da monografias e do periodicos é o mesmo de publicacoes. Essa modelagem cria uma relação de herança, onde monografia e periodicos são publicações (relação 1:1 onde a PK é FK da outra).

Vc tem dificuldade em criar as tabelas dessa maneira?

Sim, pois não tenho conhecimento, consigo criar somente tabelas simples :slight_smile: :frowning:

Para criar uma especialização, vc tem que criar a PK como sendo FK para outra tabela. Veja:

CREATE TABLE TabelaA (
    id int PRIMARY KEY AUTO_INCREMENT,
    PRIMARY KEY (id)
);

CREATE TABLE TabelaB (
    id int PRIMARY KEY REFERENCES TabelaA (id)
);

Tente criar essas tabelas e veja o DER como ficou.

1 Curtida

Boa noite, entao elaborei aqui seguinto sua lógica, entao seria algo assim

image

A tabela ENTREGA_01 é meio estranha. Pq tem o 01 no nome dela? Também é estranho a data da meta ser uma FK, assim como a SECRETARIA_NOME.

Mas a pergunta mais importante:

Qual a relação da tabela ENTREGA_01 com a tabela METAS? E o que vc está tentando modelar?

Isso seria um campo onde seria feita um acompanhamento de entrega das metas. e entrega 01 e porque vou definir 3 tipos de entregas.

Então, uma ou mais entregas possui uma meta? É isso?

sim, cada entrega e relacionada a uma meta.

Cara, a sua pergunta realmente confundiu muito o que tu queria fazer.

Se cada entrega possui uma meta, então não se trata de uma especialização. Simplesmente é um relacionamento 1:1 normal. Ou seja, uma entrega possui uma meta.

CREATE TABLE META (
    id int PRIMARY KEY AUTO_INCREMENT,
    PRIMARY KEY (id)
);

CREATE TABLE ENTREGA (
	id int PRIMARY KEY AUTO_INCREMENT,
    id_meta int FOREIGN KEY REFERENCES META (id)
);

Obrigado, mas vamos continuar conversando…

1 Curtida
//