sql >> Database teknologi >  >> RDS >> Mysql

Hvordan skal unix-tidsstempler gemmes i int-kolonner?

Standard UNIX tidsstempler er et signeret 32bit heltal, som i MySQL er en regulær "int" kolonne. Der er ingen måde, du kan gemme 9.999.999.999, da det er langt uden for repræsentationsområdet - det højeste en 32-bit int af nogen art kan nå er 4.294.967.295. Det højeste en signeret 32-bit i går er 2.147.483.647.

Hvis/når UNIX-tidsstempler går til en 64-bit datatype, så skal du bruge en MySQL "bigint" til at gemme dem.

Hvad angår int(10) , (10) del er kun til visningsformål. MySQL vil stadig bruge hele 32 bit internt til at gemme nummeret, men kun vise 10, hver gang du vælger på bordet.




  1. Sådan fungerer sqrt() i PostgreSQL

  2. MySQL specificer vilkårlig rækkefølge efter id

  3. Sådan vælger du de rigtige datatyper

  4. Opgaveliste