sql >> Databáze >  >> RDS >> Mysql

MySQL - Nejrychlejší způsob, jak zkontrolovat, zda se data v tabulce InnoDB změnila

Nejjednodušším způsobem je přidat sloupec s hodnotou NULL typu TIMESTAMP se spouštěčem:ON UPDATE CURRENT_TIMESTAMP .

Proto se vložky nezmění, protože sloupec přijímá hodnoty null a můžete vybrat pouze nové a změněné sloupce, když řeknete:

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

Při každé aktualizaci řádku se tento sloupec automaticky změní.

Zde jsou některé další informace:http://dev.mysql.com /doc/refman/5.0/en/timestamp.html

Chcete-li zobrazit smazané řádky, jednoduše vytvořte spouštěč, který zaznamená každé smazání do jiné tabulky:

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


  1. Vytvořte tabulku v SQLite

  2. Dávkový režim Normalizace a výkon

  3. Jak získat statistické informace SQL Server pomocí systémových statistických funkcí

  4. Přidejte sloupec do existující tabulky v SQLite