Zeitstempel in eine MySQL-Tabelle einfügen
- Erstellen Sie eine MySQL-Tabelle
-
Verwenden Sie
NOW()
, um den Zeitstempel in eine MySQL-Tabelle einzufügen -
Verwenden Sie
CURRENT_TIMESTAMP()
, um den Zeitstempel in eine MySQL-Tabelle einzufügen -
Legen Sie Null- oder Standardwerte für die Spalte vom Typ
TIMESTAMP
in der MySQL-Tabelle fest
Heute lernen wir, wie man Datum und Uhrzeit in die Spalte vom Typ TIMESTAMP
der MySQL-Tabelle basierend auf der Tabellendefinition einfügt.
Erstellen Sie eine MySQL-Tabelle
Zuerst erstellen wir die Tabelle, die wir für dieses Tutorial verwenden werden.
Beispielcode:
CREATE TABLE demo_one(
demo_one_id INT NOT NULL,
demo_one_timestamp TIMESTAMP NOT NULL,
PRIMARY KEY(demo_one_id)
);
Verwenden Sie DESCRIBE
wie folgt, um mehr über die Tabellendefinition zu erfahren.
Anfrage:
DESCRIBE demo_one;
Ausgang:
+--------------------+-----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------------+-----------+------+-----+---------+-------+
| demo_one_id | int | NO | PRI | NULL | |
| demo_one_timestamp | timestamp | NO | | NULL | |
+--------------------+-----------+------+-----+---------+-------+
2 rows in set (0.08 sec)
Wir können sehen, dass beide Attribute keine NULL
-Werte akzeptieren, und wir haben keine Standardwerte für sie. Das bedeutet, dass wir die Werte für beide Spalten einfügen müssen.
Verwenden Sie NOW()
, um den Zeitstempel in eine MySQL-Tabelle einzufügen
Der erste Ansatz, den wir demonstrieren werden, um TIMESTAMP in eine MySQL-Tabelle einzufügen, ist NOW()
.
Anfrage:
INSERT INTO demo_one (demo_one_id, demo_one_timestamp)
VALUES
(1, NOW());
Verwenden Sie die Anweisung SELECT
, um die aktuellen Tabellendaten anzuzeigen.
Anfrage:
SELECT * FROM demo_one;
Ausgang:
+-------------+---------------------+
| demo_one_id | demo_one_timestamp |
+-------------+---------------------+
| 1 | 2022-05-14 11:04:11 |
+-------------+---------------------+
1 row in set (0.00 sec)
Verwenden Sie CURRENT_TIMESTAMP()
, um den Zeitstempel in eine MySQL-Tabelle einzufügen
Wir können auch die Methode CURRENT_TIMESTAMP()
verwenden, um TIMESTAMP in die zuvor erstellte MySQL-Tabelle einzufügen.
Anfrage:
INSERT INTO demo_onE (demo_one_id, demo_one_timestamp)
VALUES
(2, CURRENT_TIMESTAMP());
Wir können die Anweisung SELECT
wie unten angegeben verwenden, um die Daten der Tabelle anzuzeigen.
Anfrage:
SELECT * FROM demo_one;
Ausgang:
+-------------+---------------------+
| demo_one_id | demo_one_timestamp |
+-------------+---------------------+
| 1 | 2022-05-14 11:04:11 |
| 2 | 2022-05-14 11:06:01 |
+-------------+---------------------+
2 rows in set (0.03 sec)
Legen Sie Null- oder Standardwerte für die Spalte vom Typ TIMESTAMP
in der MySQL-Tabelle fest
Wenn wir den Wert für die Spalte vom Typ TIMESTAMP
nicht einfügen möchten, können wir dies auf zwei Arten tun. Stellen Sie diese Spalte entweder so ein, dass sie NULL
-Werte akzeptiert, oder legen Sie den Standardwert für die Spalte fest.
Beispielcode (akzeptiere null
-Werte für das Feld demo_two_timestamp
):
CREATE TABLE demo_two(
demo_two_id INT NOT NULL,
# we can also write the following column definition
# as `demo_two_timestamp TIMESTAMP NULL`
demo_two_timestamp TIMESTAMP,
PRIMARY KEY(demo_two_id)
);
INSERT INTO demo_two (demo_two_id, demo_two_timestamp) VALUES (1,null), (2, NOW());
SELECT * FROM demo_two;
Ausgang:
+-------------+---------------------+
| demo_two_id | demo_two_timestamp |
+-------------+---------------------+
| 1 | NULL |
| 2 | 2022-05-14 11:15:18 |
+-------------+---------------------+
2 rows in set (0.04 sec)
Hier können wir NULL
verwenden, wenn wir den Wert für die Spalte demo_two_timestamp
nicht einfügen wollen. Wir haben auch die Flexibilität, den richtigen Wert mit NOW()
oder CURRENT_TIMESTAMP()
einzufügen, wenn wir nicht NULL
für einen bestimmten Datensatz haben wollen.
Beispielcode (Standardwert für das Feld demo_three_timestamp
setzen):
CREATE TABLE demo_three(
demo_three_id INT NOT NULL,
demo_three_timestamp TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY(demo_three_id)
);
INSERT INTO demo_three (demo_three_id) VALUES (1);
INSERT INTO demo_three (demo_three_id, demo_three_timestamp) VALUES (2, NOW());
INSERT INTO demo_three (demo_three_id, demo_three_timestamp)
VALUES (3, CURRENT_TIMESTAMP());
SELECT * FROM demo_three;
Ausgang:
+---------------+----------------------+
| demo_three_id | demo_three_timestamp |
+---------------+----------------------+
| 1 | 2022-05-14 11:21:57 |
| 2 | 2022-05-14 11:22:20 |
| 3 | 2022-05-14 11:22:40 |
+---------------+----------------------+
3 rows in set (0.00 sec)
Wenn wir weder den Wert für die Spalte demo_three_timestamp
eingeben noch NULL
haben wollen, dann können wir die Standardwerte mit DEFAULT CURRENT_TIMESTAMP
setzen, wie im obigen Beispiel gezeigt.
Verwandter Artikel - MySQL Table
- Alle Zeilen einer MySQL-Tabelle durchlaufen
- Kopieren Sie Tabellenstrukturen, ohne Daten in MySQL zu kopieren
- Rufen Sie die ID des zuletzt eingefügten Datensatzes in MySQL ab
- Sichern Sie eine einzelne Tabelle mit Mysqldump
- Tabellen- und Datenbankstruktur in MySQL anzeigen
- Unterschied zwischen zwei Tabellen in MySQL