Says who?
Ergens druk jij de datum af (of het tooltje waarmee je je query bekijkt zoals PHPMyAdmin of de MySQL query browser of...). Die zal de formattering verzorgen; MySQL niet. MySQL levert een
timestamp aan (feitelijk gewoon een bult enen en nullen), geen (al dan niet geformatteerde)
string.
TIMESTAMP columns are displayed in the same format as DATETIME columns. In other words, the display width is fixed at 19 characters, and the format is 'YYYY-MM-DD HH:MM:SS'.
Nu ben ik verder geen MySQL guru (spaar me

), maar ik mag hopen dat 'ie niet ook daadwerkelijk een timestamp zo opslaat

(dus als een bult 'chars': 2009-01-29 17:22:15)
Als ik Creepy mag geloven (en dat doe ik doorgaans wel

) moet je dus gewoon met een timestamp kunnen rekenen; maar dan moet je 'm dus ook behandelen als een timestamp (in Java dus een Date instantie) en niet als een string.
Edit:
The TIMESTAMP data type has a range of '1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' UTC. It has varying properties, depending on the MySQL version and the SQL mode the server is running in. These properties are described later in this section.
Ga eens na waarom 'ie geen '20
64-01-28' zou kunnen opslaan als 'ie het als 'ie het als YYYY-MM-etc... zou opslaan. Ik zie hier de
bekende 1970-2038 range wat me doet vermoeden dat een timestamp onderhuids gewoon een 32bits (signed) integer is. En met integers rekenen ben je waarschijnlijk wel bekend mee lijkt me?
Helaas kan ik op de MySQL site zelf niets vinden over de (interne) opslagmethode van een timestamp maar het lijkt me veilig om bovenstaande aan te nemen
Gefund!
TIMESTAMP: A four-byte integer representing seconds UTC since the epoch ('1970-01-01 00:00:00' UTC)
[
Voor 82% gewijzigd door
RobIII op 29-01-2010 17:37
]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij