Aconteceu uma situação que não consigo entender como pode ter ocorrido, nunca havia acontecido.
Tabela
ID| FUNCIONARIO | BRINDE | DISTRIBUIDOR | FORNECEDOR | DATAENTREGA
10| JOSE PEREIRA | A | JOSE | LUNA | 2022-06-09 07:00:00
11| JOSE PEREIRA | B | JOSE | LUNA | 2022-06-09 07:00:00
12| AMANDA SILVA | A | JOSE | LUNA | 2022-06-09 07:00:13
13| PEDRO SOUZA | A | AMARAL | LUNA | 2022-06-09 07:00:24
14| MARI SILVA | B | JOSE | LUNA | 2022-06-09 07:00:35
15| JOYCE SOUZA | A | AMARAL | LUNA | 2022-06-09 07:00:48
O funcionário JOSE PEREIRA foi retirar seu brinde. Ele tem o brinde A e B em um só UPDATE os 2 são processados colocando a data e hora da entrega no caso 2022-06-09 07:00:00 que esta correto.
Nas próximas entregas quando os outros vieram retirar seus brindes, já estavam todos baixados como entregue. Note que cada horário é diferente um do outro e sempre com um intervalo de 10 a 15 segundos, não tem como pois o processo do atendente demora um pouco entre um atendimento e outro, então este intervalo não bate,
Outra, toda a query do update que da baixa no brinde roda pelo ID então como pode ter agido nos demais? Se fosse uma unica operação todos deveriam ter a mesma data e hora da entrega e não tem.
No caso do JOSE PEREIRA tem 2 registros, para cada um faz um update separado.
UPDATE retiradas SET dataentrega='2022-06-09 07:00:00' WHERE id=10 AND distribuidor='JOSE' AND idfornecedor="LUNA" LIMIT 1
UPDATE retiradas SET dataentrega='2022-06-09 07:00:00' WHERE id=11 AND distribuidor='JOSE' AND idfornecedor="LUNA" LIMIT 1
Para simular o que pode ter ocorrido, tirei da query até o id=10 e também o LIMIT 1 para abranger mais
UPDATE retiradas SET dataentrega='2022-06-09 07:00:00' WHERE distribuidor='JOSE' AND idfornecedor="LUNA"
ID| FUNCIONARIO | BRINDE | DISTRIBUIDOR | FORNECEDOR | DATAENTREGA
10| JOSE PEREIRA | A | JOSE | LUNA | 2022-06-09 07:00:00
11| JOSE PEREIRA | B | JOSE | LUNA | 2022-06-09 07:00:00
12| AMANDA SILVA | A | JOSE | LUNA | 2022-06-09 07:00:00
13| PEDRO SOUZA | A | AMARAL | LUNA | 2022-06-09 07:00:24
14| MARI SILVA | B | JOSE | LUNA | 2022-06-09 07:00:00
15| JOYCE SOUZA | A | AMARAL | LUNA | 2022-06-09 07:00:48
Notem que ao retirar o ID da query, todos assumem a mesma data e hora da entrega o que esta correto. Resolvi fazer teste sem o ID pensando que lá na hospedagem eles fazendo alguma alteração dos arquivos php pudesse ter lido a query pela metade ficando sem o ID e assim abrangendo mais registros do que deveria abranger, mas como o teste acima, deveria ter colocado a mesma data e hora em todos, e não com intervalo mencionado acima.
Vendo no log do php notei que neste dia o SERVIDOR da hospedagem passou por alguns problemas técnicos, inclusive teve alguns problemas devido ter alterado a versão do PHP para 7, durante alguns minutos, depois acertaram para a correta novamente 5.4,
O provedor não conseguiu me disponibilizar as querys que chegaram até o banco, devido nossa hospedagem ser do tipo compartilhada e não dedicada, assim fiquei sem ter algo para consultar.
Enfim, meu conhecimento em Mysql é bem restrito, sempre imaginei ser um banco confiável.
Alguma ideia do que pode ter ocorrido?