MySQL 5.0.32 Insert- und Update-Timestamp
Tom
- datenbank
Hello,
ich bekomme es nicht mehr hin bei MySQL 5.0.32 zwei Timestampspalten zu definieren, von denen die eine nur beim Insert bedient und die andere bei jedem Update bedient wird, ohne dass ich Trigger einsetze.
Geht das nicht mehr, oder liegt es am HeidiSQL?
Wie muss das Create-Statement dafür aussehen?
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
echo $begrüßung;
ich bekomme es nicht mehr hin bei MySQL 5.0.32 zwei Timestampspalten zu definieren, von denen die eine nur beim Insert bedient und die andere bei jedem Update bedient wird, ohne dass ich Trigger einsetze.
Geht das nicht mehr, oder liegt es am HeidiSQL?
Soweit ich weiß, ging das noch nie. Das Handbuch verneint auch explizit diese Möglichkeit im Kapitel TIMESTAMP Properties as of MySQL 4.1
echo "$verabschiedung $name";
Hello,
ich bekomme es nicht mehr hin bei MySQL 5.0.32 zwei Timestampspalten zu definieren, von denen die eine nur beim Insert bedient und die andere bei jedem Update bedient wird, ohne dass ich Trigger einsetze.
Geht das nicht mehr, oder liegt es am HeidiSQL?
Soweit ich weiß, ging das noch nie. Das Handbuch verneint auch explizit diese Möglichkeit im Kapitel TIMESTAMP Properties as of MySQL 4.1
Es ging definitiv und das Beispiel steht sogar noch in irgend einer älteren MySQL-Handbuch-Version drin.
CREATE TABLE test1 (
zahl int(11) NOT NULL default '0',
ts1 timestamp(14) NOT NULL,
ts2 timestamp(14) NOT NULL default '00000000000000'
) TYPE=MyISAM;
INSERT INTO test1 (zahl, ts2) VALUES (2, NULL);
SELECT * FROM test1;
zahl ts1 ts2
2 20050308100309 20050308100309
UPDATE test1 SET zahl = 3 WHERE zahl = 2;
SELECT * FROM test1;
zahl ts1 ts2
3 20050308100542 20050308100309
Allerdings musste man da der Insert-Spalte diskret "NULL" übergeben.
Das muss man bei Verwendung von Triggern natürlich nicht mehr.
Und man kann die Spalten für den "standard_php_user" auch sperren gegen Veränderung.
Ich suche nun die eleganteste und nachhaltigste Lösung.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
hi,
ich bekomme es nicht mehr hin bei MySQL 5.0.32 zwei Timestampspalten zu definieren, von denen die eine nur beim Insert bedient und die andere bei jedem Update bedient wird, ohne dass ich Trigger einsetze.
Aktuelle Nachrichten vom Insignienmarkt besagen, dass heutige Kronen so stabil sein sollen, dass kein Zacken mehr herausbricht, wenn man bei solchen Operationen den gewünschten Timestamp-Spalten explizit NOW() zuweist ...
gruß,
wahsaga
Hello,
ich bekomme es nicht mehr hin bei MySQL 5.0.32 zwei Timestampspalten zu definieren, von denen die eine nur beim Insert bedient und die andere bei jedem Update bedient wird, ohne dass ich Trigger einsetze.
Aktuelle Nachrichten vom Insignienmarkt besagen, dass heutige Kronen so stabil sein sollen, dass kein Zacken mehr herausbricht, wenn man bei solchen Operationen den gewünschten Timestamp-Spalten explizit NOW() zuweist ...
Na, das habe ich doch versucht. Dann liegts mal wieder an Heidi, dass das nicht angenommen wird.
Ich hatte für Default "now()" eingesetzt...
Also kann ich nicht die bequemen Funktionen des Datenbank-Editors verwenden, sondern muss ein Alter-Table-Statement nehmen über SSH-Konsole.
Gibts denn keinen Editor (My-SQL-Frontend), der alle Möglichkeiten unterstützt? Vielleicht verkaufen die sogar einen bei MySQL? Ich habe aber noch meinen gefunden.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom