CREATE TABLE IF NOT EXISTS `pergunta` (
`idPergunta` int(11) NOT NULL AUTO_INCREMENT,
`descricao` varchar(200) DEFAULT NULL,
`tipo` char(1) DEFAULT NULL,
`variavel` varchar(15) DEFAULT NULL,
PRIMARY KEY (`idPergunta`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='descricao corresponde a pergunta propriamente dita\nresposta_' AUTO_INCREMENT=7;
CREATE TABLE IF NOT EXISTS `formulario` (
`idFormulario` int(11) NOT NULL AUTO_INCREMENT,
`nome` varchar(45) DEFAULT NULL,
PRIMARY KEY (`idFormulario`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='Conjunto de questoes que foram aplicadas em cada faze da pes' AUTO_INCREMENT=3;
CREATE TABLE IF NOT EXISTS `formulario_has_pergunta` (
`Formulario_idFormulario` int(11) NOT NULL,
`Pergunta_idPergunta` int(11) NOT NULL,
PRIMARY KEY (`Formulario_idFormulario`,`Pergunta_idPergunta`),
KEY `fk_Formulario_has_Pergunta_Pergunta1` (`Pergunta_idPergunta`),
KEY `fk_Formulario_has_Pergunta_Formulario1` (`Formulario_idFormulario`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `possui` (
`Pergunta_idPergunta` int(11) NOT NULL,
`Respostas_idRespostas` int(11) NOT NULL,
PRIMARY KEY (`Pergunta_idPergunta`,`Respostas_idRespostas`),
KEY `fk_Pergunta_has_Respostas_Respostas1` (`Respostas_idRespostas`),
KEY `fk_Pergunta_has_Respostas_Pergunta1` (`Pergunta_idPergunta`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `respostas_possiveis` (
`idRespostas` int(11) NOT NULL AUTO_INCREMENT,
`alternativaA` varchar(100) DEFAULT NULL,
`alternativaB` varchar(100) DEFAULT NULL,
`alternativaC` varchar(100) DEFAULT NULL,
`alternativaD` varchar(100) DEFAULT NULL,
`alternativaE` varchar(100) DEFAULT NULL,
PRIMARY KEY (`idRespostas`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='respostas possiveis a uma dada pergunta a serem escolhidas p' AUTO_INCREMENT=4;
é o seguinte. quando eu deleto um registro da tabela respostas possiveis, eu gostaria que fosse deletado o campo correspondente na pergunta .
Se eu deletar um campo na pergunta, o cascade esta funcionando para deletar na tabela formulario_has_pergunta.
E se eu deletar um campo em respostas_possiveis, o campo na tabela possui também é excluido.
já tentei fazer uma trigger na tabela possui usando um after delete
DELETE FROM pergunta
WHERE idPergunta = (SELECT Pergunta_idPergunta
FROM DELETED)
Pergunta
epassagem
Olá galera.
Estou com o sequinte problema.
Possui 3 tabelas relacionadas.
Formulario
Pergunta
Alternativas
é o seguinte. quando eu deleto um registro da tabela respostas possiveis, eu gostaria que fosse deletado o campo correspondente na pergunta . Se eu deletar um campo na pergunta, o cascade esta funcionando para deletar na tabela formulario_has_pergunta. E se eu deletar um campo em respostas_possiveis, o campo na tabela possui também é excluido. já tentei fazer uma trigger na tabela possui usando um after deleteporem não consegui resulta.
Não sei se estou fazendo a trigger errado.
Obrigado
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.