Trigger e função SQL para criar senha aleatória no banco de dados [RESOLVIDO]

1 resposta Resolvido
sql
Jacksonn123

Bom dia, estou tentando criar uma trigger que gera uma senha aleatória com letras maiúsculas e números de 0-9 em um campo senha do banco de dados, como é possível fazer essa trigger ?

1 Resposta

Jacksonn123
Solucao aceita

[RESOLVIDO]

[FUNÇÃO]

CREATE DEFINER=`root`@`localhost` FUNCTION `gerador_senha`() RETURNS char(6) CHARSET utf8
BEGIN
  DECLARE Aux VARCHAR(31) DEFAULT '23456789ABCDEFGHJKMNPQRSTUVWXYZ';
  DECLARE Result varchar(6) DEFAULT '';
  REPEAT
    SET Result = CONCAT(Result, SUBSTRING(Aux, FLOOR(RAND() * 31), 1));
  UNTIL LENGTH(Result) = 6
  END REPEAT;
  RETURN Result;
END

[TRIGGER]

CREATE
DEFINER=`root`@`localhost`
TRIGGER `vendas`.`before_funcionarios_insert`
BEFORE UPDATE ON `vendas`.`tb_funcionarios`
FOR EACH ROW
BEGIN
     IF (NEW.fun_senha = ' ' or New.fun_senha IS NULL) THEN
    SET NEW.fun_senha = gerador_senha();
  END IF;
END
Criado 22 de maio de 2019
Ultima resposta 27 de mai. de 2019
Respostas 1
Participantes 1