I created a table with some data in it, and a trigger like this:
DROP TRIGGER IF EXISTS verifica_cpf;
DELIMITER //
CREATE TRIGGER verifica_cpf
BEFORE INSERT ON `usuario` FOR EACH ROW
BEGIN
IF (SELECT COUNT(*) FROM usuario WHERE cpf = new.cpf) > 1 THEN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'CPF EXISTENTE!';
END IF;
END//
DELIMITER ;
Basically it checks for duplicate 'cpf' values before inserts.
Let's say that in my table, there's one entry with this cpf value: 873.255.218-12
If i try to insert another entry with the same cpf value, the trigger won't work. But if i insert it again, it will.
How can i solve this?