Resumo : neste tutorial, você aprenderá como usar a DROP TRIGGER
instrução MySQL para eliminar um gatilho do banco de dados.
Introdução à instrução MySQL DROP TRIGGER
A DROP TRIGGER
instrução exclui um gatilho do banco de dados.
Aqui está a sintaxe básica da DROP TRIGGER
instrução:
DROP TRIGGER [IF EXISTS] [schema_name.]trigger_name;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Nesta sintaxe:
- Primeiro, especifique o nome do gatilho que deseja eliminar após as
DROP TRIGGER
palavras-chave. - Segundo, especifique o nome do esquema ao qual o gatilho pertence. Se você ignorar o nome do esquema, a instrução eliminará o gatilho no banco de dados atual.
- Terceiro, use
IF EXISTS
a opção para descartar condicionalmente o gatilho se o gatilho existir. AIF EXISTS
cláusula é opcional.
Se você descartar um gatilho que não existe sem usar a IF EXISTS
cláusula, o MySQL emitirá um erro. No entanto, se você usar a IF EXISTS
cláusula, o MySQL emitirá um NOTE
.
DROP TRIGGER
Requer o privilégio TRIGGER
para a tabela associada ao gatilho.
Observe que se você eliminar uma tabela , o MySQL eliminará automaticamente todos os gatilhos associados à tabela.
DROP TRIGGER
Exemplo de MySQL
Primeiro, crie uma tabela chamada billings
para demonstração:
CREATE TABLE billings (
billingNo INT AUTO_INCREMENT,
customerNo INT,
billingDate DATE,
amount DEC(10 , 2 ),
PRIMARY KEY (billingNo)
);
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Segundo, crie um novo gatilho chamado BEFORE UPDATE
associado à billings
tabela:
DELIMITER $$
CREATE TRIGGER before_billing_update
BEFORE UPDATE
ON billings FOR EACH ROW
BEGIN
IF new.amount > old.amount * 10 THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'New amount cannot be 10 times greater than the current amount.';
END IF;
END$$
DELIMITER ;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Caso você não esteja familiarizado com a DELIMITER
instrução, confira aqui na instrução de procedimento armazenado .
O gatilho é ativado antes de qualquer atualização. Se o novo valor for 10 vezes maior que o valor atual, o gatilho gerará um erro.
Terceiro, mostre os gatilhos:
SHOW TRIGGERS;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Quarto, solte o before_billing_update
gatilho:
DROP TRIGGER before_billing_update;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Por fim, mostre os gatilhos novamente para verificar a remoção:
SHOW TRIGGERS;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Neste tutorial, você aprendeu como usar a DROP TRIGGER
instrução MySQL para eliminar um gatilho do banco de dados.