Hi!
INSERT INTO tabelle (timestamp1, timestamp2, rest) VALUES (NOW(), NOW(), 'ein string und so weiter');
... ich mach da mit dem timestamp gar nichts. Ich dachte timestamp würde sich immer automatisch setzen.
Sven meint einen eigenen Timestamp, nicht den MySQL Spalten-Typ Timestamp, der wird bei Inserts und jedem Update automatisch auktualisiert.
Nein, eigentlich meinte ich schon ganz genau den Datentyp TIMESTAMP. Nur: Der aktualisiert sich eben nicht immer automatisch. Siehe auch http://www.mysql.com/doc/D/A/DATETIME.html
Kleiner Auszug:
"If you have multiple TIMESTAMP columns, only the first one is updated automatically.
Automatic updating of the first TIMESTAMP column occurs under any of the following conditions:
- The column is not specified explicitly in an INSERT or LOAD DATA INFILE statement.
- The column is not specified explicitly in an UPDATE statement and some other column changes value. (Note that an UPDATE that sets a column to the value it already has will not cause the TIMESTAMP column to be updated, because if you set a column to its current value, MySQL ignores the update for efficiency.)
- You explicitly set the TIMESTAMP column to NULL."
Du brauchst lediglich zu diesem eine 2. Spalte in die Du bei Inserts mit now() den aktuellen Zeitpunkt einträgts, udn das Feld sollte dann z.B. ein datetime-Typ sein!
TIMESTAMP-Typ geht auch wunderbar. Nur sollte angesichts der Tatsache, daß nur die erste Spalte automatisch aktualisiert wird (wenn denn überhaupt), vielleicht einfach die Reihenfolge in der Tabelle getauscht werden: Zuerst letzte Aktualisierung, und dann Erstelldatum. ;)
- Sven Rautenberg