Como posso detectar linhas redundantes na tabela?
estou seguindosolução # 1 doesta resposta. Depois de um tempo, haverá algumas linhas redundantes na tabela. Suponha esta tabela:
+------+------------------+
| user | cookie |
+------+------------------+
| 1 | ojer0f934mf2... |
| 2 | ko4398f43043... |
| 2 | 34fjkg3j438t... |
| 3 | 0243hfd348i4... |
+------+------------------+
quando usuário1
remove os cookies do navegador, ainda esta linha existe no banco de dados:
| 1 | ojer0f934mf2... |
E quando ele abre o meu site, ele precisa fazer login novamente. Então aqui está a tabela:
+------+------------------+
| user | cookie |
+------+------------------+
| 1 | ojer0f934mf2... | -- now this row is useless anymore
| 2 | ko4398f43043... |
| 2 | 34fjkg3j438t... |
| 3 | 0243hfd348i4... |
| 1 | 0243hfd348i4... |
+------+------------------+
Certamente, no futuro, o número dessas linhas inúteis aumentará. Bem, como posso gerenciar isso? Na verdade eu posso criar umEVENT
para limpar essa mesa(por dia) removendo linhas redundantes. Mas aqui está o problema: como posso detectá-los? Como posso especificar que uma linha é inútil?
EDITAR: Posso adicionar uma nova coluna e armazenar o registro de data e hora e remover todas as linhas do registro de data e hora antigas por umEVENT
(ou um cron). Mas essa não é uma solução perfeita. Eu gosto que um cookie seja válido até o usuário sair(por isso não gosto de nenhuma limitação (ou prazo de validade) para cookies).
Agora estou procurando uma solução para determinar linhas redundantes(linhas não antigas).