Tracciare nuovi record inseriti in tabella MySql

Vorrei poter implementare un meccanismo di monitoraggio che tracci il numero di record inseriti in una certa data in una tabella, ad es. alla data odierna sono stati inseriti 13 records in MyTable, qual'è il modo migliore per implementarlo?

Io ho creato già in MySql una tabella log che è quella che dovrebbe tenere traccia dei dati inseriti, così

CREATE TABLE `log` (
`id` INTEGER NOT NULL AUTO_INCREMENT ,
`date` DATETIME NOT NULL ,
`count` INTEGER NOT NULL ,
PRIMARY KEY (`id`)
);

Ovviamente potrei fare una query insert che venga invocata ad ogni nuovo inserimento (record) in MyTable, ma non mi sembra una soluzione molto elegante, c'è un modo migliore per aggiornare questa tabella log e contare i nuovi records che via via vengono inseriti?

In Corso 2
MySql 08-06-2018 2 Risposte 740 Visite 0
Agostino Marticoli

Agostino Marticoli

Autore di questa domanda

Risposte ( 2 approvate )

  1. Giacomo Barrile
    +1
    08-06-2018 11:22:42
    Rispondi

    I triggers sono sicuramente il metodo migliore per scatenare azioni quando una tabella MySql viene cambiata a seguito di una insert, update o delete.

    Nel tuo caso quindi si adattano perfettamente alle tue esigenze, potresti creare un trigger che all'insert di un nuovo record esso vada a scrivere nella tabella log alla data odierna inserendolo come nuovo record se inesistente o aggiornando il campo count di una unità se già presente.

  2. Giorgio Borelli
    0
    08-06-2018 11:27:28
    Rispondi
    Nella tua tabella 'log' ti sconsiglio fortemente di definire i campi con i nomi 'date' e 'count', queste sono parole chiavi del linguaggio SQL di MySql e potrebbero darti problemi con le query.

Rispondi

Per poter rispondere a questa domanda, devi essere registrato e loggato sul sito, dopodichè compila il box sottostante cercando di essere il più chiaro ed esauriente possibile, la tua risposta potrebbe essere la soluzione che l'utente cerca ed essere contrassegnata come migliore, consentendoti così di ottenere punti ed autorevolezza.

 Domanda Precedente

 Elenco Domande 

Domanda Successiva