Stored Procedures

1 resposta
mysql
J

olá,

Eu tenho 2 tabelas PRODUTO(id, descricao, qtd) e VENDA(id_prod, id_venda, qtd_venda)

eu preciso verificar usando um procedimento se ao inserir uma venda a qtd_venda é menor que a qtd

como estou tentando fazer

create table produto(
id int auto_increment,

descricao varchar(30),

preco double(10,2),

qtd int,

primary key (id)

);
create table venda(

id_produto int,

id_venda int auto_increment,

qtd int,

primary key (id_venda),

constraint fk_id_prd foreign key(id_produto) references produto(id)

);

SELECT * FROM venda;
SELECT * FROM produto;

insert into produto(descricao, preco, qtd)
values(‘baralho.’, 10, 20);

insert into venda(id_produto, qtd)
values(3, 17);

create trigger validar_venda before insert
on venda for each row

DELIMITER $$
create procedure valida_venda (id_prod_vendas int, qtds_vendas int)
BEGIN

SELECT * FROM produto p, venda v
WHERE p.id = v.id_produto
AND id_prod_vendas = p.id
AND p.qts >= qtd_venda;

END $$
DELIMITER ;

1 Resposta

darlan_machado

Você quer uma SP ou uma triggert? Como é algo para ser executado antes da inserção, eu acredito que a trigger fosse mais interessante.

Criado 31 de maio de 2018
Ultima resposta 1 de jun. de 2018
Respostas 1
Participantes 2