Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Rapaziada to criando uma loja para uma empresa e eu to emboscado em uma trigger que ela faz o seguinte, toda vez que um usuario finalizar uma compra ele automaticamente insere o produto, cliente e o valor na Tabela Historico e exclui da tabela pedidos, so que eu consegui fazer isso somente la no meu curso, so que ja faz 2 anos rsrs, se voces conseguirem me ajudar serei muito grato
Tabela pedidos
CREATE TABLE `pedidos` (
`num_ped` bigint(20) NOT NULL,
`id_pro` int(11) NOT NULL,
`qnt` int(11) NOT NULL,
KEY `num_ped` (`num_ped`),
KEY `id_pro` (`id_pro`),
CONSTRAINT `pedidos_ibfk_1` FOREIGN KEY (`num_ped`) REFERENCES `num_ped` (`num_ped`),
CONSTRAINT `pedidos_ibfk_2` FOREIGN KEY (`id_pro`) REFERENCES `produtos` (`id_pro`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Tabela Historico:
CREATE TABLE `historico` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`num_ped` int(11) NOT NULL,
`id_pro` int(11) NOT NULL,
`qnt` int(11) NOT NULL,
`data_pedido` datetime NOT NULL,
`data_envio` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=23 DEFAULT CHARSET=latin1;
Trigger : Pedidos e Enviar
DROP TRIGGER /!50030 IF EXISTS / tr_pedidos;
DELIMITER $$
CREATE DEFINER = root@localhost TRIGGER tr_pedidos AFTER INSERT ON pedidos FOR EACH ROW begin
insert into historico(num_ped,id_pro,qnt,data_pedido,data_envio)
values(new.num_ped,new.id_pro,new.qnt,now(),"0000-00-00");
end $$
DELIMITER;
--
-- Definition of trigger tr_enviar
--
DROP TRIGGER /!50030 IF EXISTS / tr_enviar;
DELIMITER $$
CREATE DEFINER = root@localhost TRIGGER tr_enviar AFTER DELETE ON pedidos FOR EACH ROW begin
update historico
set data_envio=now()
where
num_ped=old.num_ped
and
id_pro=old.id_pro
and
qnt=old.qnt
and
data_envio='0000-00-00';
end $$
DELIMITER;
Lembrando o erro mysql é esse :
>
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DELIMITER $$
CREATE DEFINER = root@localhost TRIGGER tr_pedidos AFTER I' at line 1
Eu uso aqui o WAMP 2.a : PHPMyAdmin 2.10.1 , PHP 5.2.5, Apache 2.2.
Se voces conseguirem me ajudar serei muito grato!
Carregando comentários...