Home
  • Forum
  • PHP
  • script php controllo intervallo temporale record

script php controllo intervallo temporale record | PHP

Topic: Pubblico - Composto da 3 Posts di 2 Utenti.

28 Agosto, 2011 09:44 #1
Federico_1
Utente

Federico_1
Registrato: Aug, 2011
Posts: 2
Offline

Ciao a tutti!
Ho una tabella che contiene un campo denominato dateTime; un programma inserisce ogni 30 minuti (1800 secondi) un record nella suddetta tabella.
Ora. E' fattibile costruire uno script php che controlli ogni riga della tabella se l'intervallo temporale sia sempre =1800? Della serie, se >di 1800 allora fa un'INSERT con data e ora maggiorati di 1800 rispetto alla riga precedente, e così via....
Tutto questo per scongiurare problemi di "continuità dei dati" in caso di mancanzia di corrente o altri problemi..
Grazie anticipatamente,
Federico

PS: i formati di data e ora sono in TIMESTAMP

31 Agosto, 2011 08:47 #2
fuser
Utente

fuser
Registrato: Aug, 2011
Posts: 86
Offline

Possono verificarsi diversi problemi per cui l'intervallo può aumentare di un secondo, tienilo presente.

1SELECT @oldTS := 0;
2SELECT campo_timestamp FROM (
3SELECT campo_timestamp, IF (campo_timestamp - @oldTS = 1800, 1, 0) AS ok
4    FROM tabella 
5    ORDER BY campo_timestamp) 
6WHERE ok = 0;

Ammesso che non ci siano errori nella mia query, questa query dovrebbe restituirti tutti i record in cui campo_timestamp non è uguale al precedente + 1800 (potresti modificarlo così: campo_timestamp - @oldTS <= 1805).

23 Settembre, 2011 08:58 #3
Federico_1
Utente

Federico_1
Registrato: Aug, 2011
Posts: 2
Offline

Ciao, grazie per la risposta.
L'intervallo è sicuramente 1800 secondi, non aumenta ne diminuisce di un secondo, quindi questo problema non c'è.

Provo a mettere in pratica il tuo suggerimento...

Condividi su:

Loggati o Registrati per replicare