Problema timestamp | SQL & MySQL

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

24 Ottobre, 2011 14:05 #1
Gianluca
Utente

Gianluca
Registrato: Oct, 2011
Posts: 2
Offline

Ciao,in una tabella è possibile avere due campi tipo TIMESTAMP, uno che si aggiorna automaticamente con current_timestamp ed uno che aggiorno io passando il valore Now() nell UPDATE?
Grazie
Gianluca

27 Ottobre, 2011 16:54 #2
fuser
Utente

fuser
Registrato: Aug, 2011
Posts: 86
Offline

Sì. Non c'è limite al numero di colonne TIMESTAMP.
Una sola colonna può avere il valore automatico. Se specifichi DEFAULT CURRENT_TIMESTAMP ha il valore automatico in INSERT, se specifichi ON UPDATE CURRENT_TIMESTAMP si aggiorna all'UPDATE, puoi anche specificarli entrambi.
Solo, non puoi avere una colonna che si aggiorna all'INSERT e un'altra all'UPDATE.
Per non avere problemi, nelle colonne che non devono avere il valore automatico metti un DEFAULT 0.

27 Ottobre, 2011 17:43 #3
Gianluca
Utente

Gianluca
Registrato: Oct, 2011
Posts: 2
Offline

Il mio problema è proprio quello, devo gestire la colonna DATA_UPDATE senza aggiornare la prima colonna DATA_CREAZIONE. Ho risolto creandomi una stringa data da uploudare nel campo VARCHAR(20) DATA_UPDATE del tipo aaaammgg_mmss. In questo modo alla creazione del nuovo record si aggiorna la data creazione in automatico e in seguito ad una modifica dovrebbe rimanere invariato in quanto non richiamo il campo nella SQL di UPDATE passando solo il campo DATA_UPDATE. Almeno spero. Ora controllo nuovamente.
Grazie comunque

29 Ottobre, 2011 02:28 #4
fuser
Utente

fuser
Registrato: Aug, 2011
Posts: 86
Offline

Se lo hai creato come DEFAULT CURRENT_TIMESTAMP, senza update, non c'è motivo per cui si dovrebbe aggiornare.

Condividi su:

Loggati o Registrati per replicare