Virtuál se správou na 4 měsíce za super cenu. AKCE: 1 + 3 měsíce zdarma.
Zobrazují se odpovědi 1 až 8 z 8

Jak rozpoznat změnu tabulky ?

  1. Abych nastínil trošku situaci, mám tabulku která je "ovládána" přes webové rozhraní a pak mám skript, který by měl provést určitou akci pokud se v tabulce provede byť sebemenší změna.

    Problém je, že řádky v tabulce nemají žádnou položku changed_at nebo něco na ten způsob, navíc jí není možné jí ani z hlediska struktury ani hodnot(readonly) skriptem měnit.

    Moje řešení je vycucnout skriptem celou tabulku, spočítat nad ní hash a porovnat s minulým, nicméně tohle mi nepřijde jako moc elegantní řešení. Nemáte někdo tušení jestli mysql sama o sobě nemá nějaké interní datum pro poslední změnu tabulky dosažitelné přes sql dotaz ?

  2. Happy Robot :]

    Co se právě děje na Webtrhu?

  3. no nebu si tu tabulku prekopirovat a pak porovnavat s tou starou...

  4. Nejsou přesně k tomuto určené triggery?

  5. Citace Původně odeslal miniJOHN Zobrazit příspěvek
    no nebu si tu tabulku prekopirovat a pak porovnavat s tou starou...
    to není špatnej nápad, ale přecejenom se musí zapisovat do databáze a to porovnávání a následná kopie tabulky sežere víc procesorového času než hash nad jedním selectem.

  6. Citace Původně odeslal Retal Zobrazit příspěvek
    Nejsou přesně k tomuto určené triggery?
    Problém je že triggery umí reagovat na nějaký sql dotaz jen jiným sql dotazem (správně ?). A i kdyby se konal nějaký exec(), tak problém je že skript není na databázovém stroji - což by se taky nechalo řešit, ale to už rozhodně není elegantní řešení, které by mělo fungovat za každých okolností.

  7. Citace Původně odeslal toshi Zobrazit příspěvek
    Problém je že triggery umí reagovat na nějaký sql dotaz jen jiným sql dotazem (správně ?). A i kdyby se konal nějaký exec(), tak problém je že skript není na databázovém stroji - což by se taky nechalo řešit, ale to už rozhodně není elegantní řešení, které by mělo fungovat za každých okolností.
    Trigery bezi na databazovem stroji v ramci databaze.

  8. tak jsem řešení přecejenom našel http://dev.mysql.com/doc/refman/5.0/...le-status.html
    mysql má přímo Update_time, navíc poskytuje i základní checksum dotazem CHECKSUM TABLE ... takže není nutné tahat data potažmo řešit hash ve skriptu (http://dev.mysql.com/doc/refman/5.0/...sum-table.html)

    konec dobrý, všechno dobré, díky za spolupráci :)

  9. Citace Původně odeslal toshi Zobrazit příspěvek
    tak jsem řešení přecejenom našel http://dev.mysql.com/doc/refman/5.0/...le-status.html
    mysql má přímo Update_time, navíc poskytuje i základní checksum dotazem CHECKSUM TABLE ... takže není nutné tahat data potažmo řešit hash ve skriptu (http://dev.mysql.com/doc/refman/5.0/...sum-table.html)

    konec dobrý, všechno dobré, díky za spolupráci :)
    Pekne, ale pouze pro MyISAM, tak bacha na nabehnuti.

Hostujeme u Server powered by TELE3