list of tables in the database

Asked

Viewed 35 times

0

I need to make two tables of products talk to each other in Mysql, being them produto (father) X insumo (daughter).

Example:

PRODUCT: LUNCH BISTECA
INPUTS THAT MAKE UP THE DISH: rice; beans; steak; flour

I need it so that when I go to put the cost of inputs, I can already take the final cost of the dish. In addition, the inputs need to be in a separate table because there are several other inputs that make up other dishes.

  • Important you [Dit] your post and explain in detail the problem by describing what you tried and where is the current difficulty. Requests for complete refactoring or ready code, tutorials and/or things involving more than one subject in the same post usually do not fit the site scope. Links to better understand how Sopt works: [Tour], [Ask], Manual on how NOT to ask questions and [Help]. If you have any questions about specific details, reducing the code to a [MCVE] can help a lot.

1 answer

1

Your question is rather extensive.

I have prepared a script for creating tables that should give you a hint for your solution:

-- Tabela de Produtos
CREATE TABLE PRODUTO
(
    COD_PRODUTO INT,
    TXT_DESCRICAO VARCHAR(50),
    PRIMARY KEY(COD_PRODUTO)
)

-- TABELA DE INSUMOS
CREATE TABLE INSUMO
(
   COD_INSUMO INT,
   TXT_DESCRICAO varchar(50),
   PRIMARY KEY(COD_INSUMO)
)   

-- TABELA QUE RELACIONA PRODUTOS E INSUMOS
CREATE TABLE PRODUTO_INSUMO
(
   COD_PRODUTO_INSUMO INT,
   COD_PRODUTO INT,
   COD_INSUMO INT,
   NUM_QUANTIDADE INT,
   PRIMARY KEY (COD_PRODUTO_INSUMO)
)

-- RELACIONAMENTOS 
ALTER TABLE PRODUTO_INSUMO
  ADD CONSTRAINT
      FOREIGN KEY (COD_PRODUTO)
      REFERENCES PRODUTO(COD_PRODUTO)

ALTER TABLE PRODUTO_INSUMO
  ADD CONSTRAINT
      FOREIGN KEY (COD_INSUMO)
      REFERENCES INSUMO(COD_INSUMO)

Scripts that exemplify the information as per its specification:

-- INSUMO:
INSERT INTO INSUMO (COD_INSUMO, TXT_DESCRICAO) VALUES (1, 'FEIJAO')
INSERT INTO INSUMO (COD_INSUMO, TXT_DESCRICAO) VALUES (2, 'ARROZ')
INSERT INTO INSUMO (COD_INSUMO, TXT_DESCRICAO) VALUES (3, 'FARINHA DE MANDIOCA')
INSERT INTO INSUMO (COD_INSUMO, TXT_DESCRICAO) VALUES (4, 'CARNE')   

-- PRODUTO:
INSERT INTO PRODUTO (COD_PRODUTO,TXT_DESCRICAO) VALUES (1, 'FEIJOADA')
INSERT INTO PRODUTO (COD_PRODUTO,TXT_DESCRICAO) VALUES (2, 'BIFE A MILANESA')

-- PRODUTO_INSUMO:

-- 1 KG DE FEIJAO NA FEIJOADA
   INSERT INTO PRODUTO_INSUMO (COD_PRODUTO, COD_INSUMO, NUM_QUANTIDADE) 
   VALUES (1,1,1) 

-- 1 KG DE ARROZ NA FEIJOADA
   INSERT INTO PRODUTO_INSUMO (COD_PRODUTO, COD_INSUMO, NUM_QUANTIDADE) 
   VALUES (1,2,1) 

-- 2 KG DE FARINHA DE MANDIOCA NA FEIJOADA
   INSERT INTO PRODUTO_INSUMO (COD_PRODUTO, COD_INSUMO, NUM_QUANTIDADE) 
   VALUES (1,3,2) 

-- 3KG CARNE NO BIFE A MILANESA
   INSERT INTO PRODUTO_INSUMO (COD_PRODUTO, COD_INSUMO, NUM_QUANTIDADE) 
   VALUES (2,4,3) 

-- 1 KG FARINHA DE MANDIOCA NO BIFE
   INSERT INTO PRODUTO_INSUMO (COD_PRODUTO, COD_INSUMO,NUM_QUANTIDADE) 
   VALUES (2,3,1) 

I hope it helps.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.