Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [Mysql] timestamp: quando conviene?

    Ciao a tutti,
    devo creare due campi in una tabella per specificare la data di inserimento del record e la data dell'ultima modifica.

    ricordo (o forse sbaglio?) che in passato c'erano alcune limitazioni nell'uso di più campi settati come timestamp nella stessa tabella, ora...questi problemi ci sono ancora?
    (considerando che voglio rendere le pagine funzionanti anche in caso di aggiornamenti di Mysql, mi conviene utilizzare timestamp... oppure datetime(specificando io nella query il valore) per salvare la data di inserimento e dell'ultima modifica?

    un ultima domanda... se dovessi creare un campo ad esempio una data e ora di un avvenimento, in questo caso mi conviene utilizzare datetime?


    ciao...e grazie come sempre a tutti!

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    157
    io le gestisco come interi, mi torna più comodo in quanto ci infilo il timestamp diretto.

  3. #3
    grazie della risposta...
    quindi tu li imposti come int(11) e poi li aggiorni tu nelle query di insert/update...giusto?

    come idea non sembra male...in questo modo non avrei problemi in caso di futuri aggiornamenti di Mysql...

    c'è per qualche contro-indicazione nel fare in questo modo?

    per il secondo caso (se dovessi creare un campo ad esempio una data e ora di un avvenimento, in questo caso mi conviene utilizzare datetime) tu useresti sempre un campo int? se dovessi trovare tutti gli avvenimenti che sono accaduti un mese fa... come faresti? utilizzando un campo datetime potrei usare qualcosa del tipo Month(campo) = ...
    ma così (con int) come si potrebbe fare? dovrei ricavarmi un range da utilizzare direttamente in php e in base a quello effettuare la query?
    (ad esempio minori di 1108389369 e maggiori di 1108389359 , esempio con numeri a caso)

    ciao..e grazie ancora

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    157
    è semplice, ti ricavi con mktime il timestamp delle date che intendi confrontare, poi li tratti come interi.
    cerchi nella colonna tutti gli interi che stanno tra l'mktime della data iniziale e l'mktime della data finale.
    diciamo che la controindicazione è quella di non avere dei dati nel database coi quali puoi fare una lettura diretta, però hai delle funzioni esempio date() che, prendendo in pasto l'intero del timestamp, ti permettono di avere in svariati formati la visualizzazione del dato temporale.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.