2016-04-18 5 views
0


Ich habe zwei Zeitstempel in einer Tabelle.
1 - timestamp01 - Dies wird Zeitstempel aufzeichnen, wenn der Benutzer eine neue Zeile in der Datenbank erstellt
2 - timestamp02 - Dies sollte Zeitstempel aufzeichnen, wenn Benutzer irgendetwas in der bestimmten Zeile aktualisieren/bearbeiten.

Meine Frage ist, wie konfiguriere ich timestamp02, um den aktuellen Zeitstempel aufzuzeichnen, wenn der Benutzer einige Änderungen an der bestimmten Zeile vorgenommen hat?
Manage zwei Zeitstempel

Ich verwende MySQL als meine Datenbank

Antwort

0

Dieser Link sollten Sie https://dev.mysql.com/doc/refman/5.5/en/timestamp-initialization.html helfen. So würden Sie diese Spalte als Auto-Aktualisierung markieren müssen, um den Überblick über alle Updates zu halten

timestamp02 TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

jedoch rudern, zur Kenntnis nehmen, wie die Doc sagt

One Die Spalte TIMESTAMP in einer Tabelle kann den aktuellen Zeitstempel als Standardwert für die Initialisierung der Spalte, den Wert für die automatische Aktualisierung oder beides enthalten. Es ist nicht möglich, dass der aktuelle Zeitstempel der Standardwert für eine Spalte und der automatische Aktualisierungswert für eine andere Spalte ist.

+0

Könnten Sie bitte etwas mehr erklären? –

+0

Damit die Spalte den Zeitstempel bei der Aktualisierung der Spalte enthält, müssen Sie im Grunde die Spalte vom Typ timestamp erstellen, deren Standardwert CURRENT_TIMESTAMP bei Markierung ON UPDATE als CURRENT_TIMESTAMP ist. Daher wird Ihre Spalte bei jeder Aktualisierung der Zeile aktualisiert. Wenn Sie jedoch nur zwei Spalten in Tabelle 1 haben möchten, um den ursprünglichen Anfangswert beizubehalten, und einen, um den Wert für die automatische Aktualisierung beizubehalten, ist dies gemäß dem Dokument nicht möglich. Ich habe jedoch nicht versucht, zwei Zeitstempel-Spalten zu haben, also können Sie das einfach überprüfen –

Verwandte Themen