Bom dia, estou com um problema ao fazer o reset de senhas, alguem ja passou por algo parecido? se sim consegue dar uma solução?
Grato.

Erro:

An exception occurred while executing ' INSERT INTO historico_atendimentos ( id, unidade_id, usuario_id, servico_id, prioridade_id, status, sigla_senha, num_senha, num_senha_serv, nm_cli, num_local, dt_cheg, dt_cha, dt_ini, dt_fim, ident_cli, usuario_tri_id, atendimento_id ) SELECT a.id, a.unidade_id, a.usuario_id, a.servico_id, a.prioridade_id, a.status, a.sigla_senha, a.num_senha, a.num_senha_serv, a.nm_cli, a.num_local, a.dt_cheg, a.dt_cha, a.dt_ini, a.dt_fim, a.ident_cli, a.usuario_tri_id, a.atendimento_id FROM atendimentos a WHERE a.dt_cheg <= :data AND (a.unidade_id = :unidade OR :unidade = 0) AND a.atendimento_id IS NULL' with params ["2024-10-16 08:58:56", 1]: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '192285' for key 'PRIMARY'

Esse é um problema do auto_increment do MySQL 5, que guarda o valor da sequência em memória, e ao reiniciar o banco dados, para restaurar o valor ele pega o maior valor presente na tabela.

O problema é que o Novo SGA move os registros da tabela de atendimentos para a tabela de histórico, então se reiniciar o MySQL 5 com essa tabela vazia, ele vai reiniciar o contador.

Esse problema foi resolvido no MySQL 8.

Enfim, dá para resolver isso utilizando essas PROCEDURES que criei:
https://gist.github.com/rogeriolino/7c211fb83ea2325f4fcd45346da91401

Uma para acertar os IDs (fix_atendimentos_id) da tabela de atendimentos e outro para acertar o valor do auto_increment (update_atendimentos_auto_increment).

CALL fix_atendimentos_id;
CALL update_atendimentos_auto_increment;

Antes de rodar os scripts faça um backup do seu banco.