MySQL: Datetime Versus Stempel datatyper 
 
 timedatatyper i MySQL kan være forvirrende. Forhåpentligvis vil dette eksemplet og diskusjon bidra til å forklare forskjellene i tidsstempel og datetime datatyper 
 
 
 
 Fra MySQL referanse:. 
 
  DATETIME typen er brukes for verdier som inneholder både dato og klokkeslett deler. MySQL henter og viser datetime-verdier i "ÅÅÅÅ-MM-DD TT: MM: SS 'format. Det området som støttes er "1000-01-01 00:00:00" til "9999-12-31 23:59:59".   TIMESTAMP datatypen brukes for verdier som inneholder både dato og klokkeslett deler. TIMESTAMP har en rekke "1970-01-01 00:00:01" UTC til '2038-01-19 03:14:07' UTC.   En stor forskjell mellom disse to datatyper er at TIMESTAMP datatype verdier blir konvertert fra gjeldende tidssone til UTC for lagring formål og konverteres tilbake fra UTC til gjeldende tidssone når de brukes. De datetime datatype verdier er uendret i forhold til tidssonen   Dette eksemplet er en god øvelse i å demonstrere forskjellen mellom disse to datatypene       
 
 
 
  mysql >..; vise variabler som «% TIME_ZONE% '; + ------------------ + --------------------- + | VARIABLE_NAME | Verdi | + ------------------ + --------------------- + | system_time_zone | India Standard Time || TIME_ZONE | Asia /Calcutta | + ------------------ + --------------------- + 2 rader i settet (0,00 sek) 
 Du kan se våre nåværende tidssone. Under dette miljøet, la oss lage en tabell med de to datatyper og fylle den med det samme tidsmessig informasjon 
  opprette tabellen datedemo (mydatetime datetime, mytimestamp timestamp);. Query OK, 0 rader berørt (0,05 sek) 
 sette inn datedemo verdier ((nå ()), (nå ())); Query OK, 1 rad påvirket (0,02 sek) 
 velg * fra datedemo; + ---------- ----------- + --------------------- + | mydatetime | mytimestamp | + --------------------- + --------------------- + | 2011-08-21 14:11:09 | 2011-08-21 14:11:09 | + --------------------- + ---------------- ----- + en rad i sett (0,00 sek) 
 på dette punktet datetime og tidsstempel datatyper har forblitt de samme verdiene. La oss endre tidssonen se resultatene 
  SET TIME_ZONE = "Amerika /new_york";. Query OK, 0 rader berørt (0,00 sek) 
 velg * fra datedemo; + ------ --------------- + --------------------- + | mydatetime | mytimestamp | + --------------------- + --------------------- + | 2011-08-21 14:11:09 | 2011-08-21 04:41:09 | + --------------------- + ---------------- ----- + en rad i sett (0,00 sek) 
 eksempelet ovenfor viser hvordan TIMESTAMP dato type endret verdiene etter endring av tidssone til "Amerika /new_work" hvor DATETIME er uendret. 

