sql >> Database >  >> RDS >> Mysql

MySQL - Snelste manier om te controleren of gegevens in de InnoDB-tabel zijn gewijzigd

De eenvoudigste manier is om een ​​kolom met nullwaarden van het type TIMESTAMP toe te voegen, met de trigger:ON UPDATE CURRENT_TIMESTAMP .

Daarom zullen de invoegingen niet veranderen omdat de kolom nulls accepteert, en je kunt alleen nieuwe en gewijzigde kolommen selecteren door te zeggen:

SELECT * FROM `table` WHERE `mdate` > '2011-12-21 12:31:22'

Elke keer dat u een rij bijwerkt, verandert deze kolom automatisch.

Hier is wat meer informatie:http://dev.mysql.com /doc/refman/5.0/en/timestamp.html

Om verwijderde rijen te zien, maakt u eenvoudig een trigger aan die elke verwijdering naar een andere tabel gaat loggen:

DELIMITER $$
CREATE TRIGGER MyTable_Trigger
AFTER DELETE ON MyTable
FOR EACH ROW
BEGIN
    INSERT INTO MyTable_Deleted VALUES(OLD.id, NOW());
END$$


  1. migreren naar mysql in django

  2. Kan de afbeelding niet uploaden en opslaan in de database met behulp van php

  3. hoe ERROR 1045 (28000) te verhelpen:Toegang geweigerd voor gebruiker 'ODBC'@'localhost' (met wachtwoord:NO) permanent

  4. Mysql-overeenkomst...tegen vs. eenvoudig zoals %term%