Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Versão de linha para MySql


O Mysql não possui um mecanismo de versionamento de linhas embutido. Embora o uso de um tipo de carimbo de data/hora possa parecer bom, você vai falhar com isso para consultas que atualizam várias linhas simultaneamente e demoram mais do que a resolução do carimbo de data/hora, pois o valor atribuído é baseado no início da alteração e não no final da o troco.

Portanto, se sua consulta de atualização afetar 100 linhas, todas as linhas terão o mesmo carimbo de data/hora (digamos um valor de 2015-10-28 09:47:10.123456). Mas, é possível que as linhas não terminem de escrever até 28/10/2015 09:47:10.654321.

Se, separadamente, você estiver procurando todas as linhas alteradas com base em algum outro carimbo de data/hora (digamos, 2015-10-28 09:47:10.500000), você não obterá os resultados desejados. E dependendo do seu código, você pode perder as 100 linhas alteradas.

É o fato de que as alterações nas linhas agora podem ter um carimbo de data/hora no passado que você não pode simplesmente comparar 2 carimbos de data/hora para obter todas as linhas alteradas.