你在其他一些點可能失敗,這是很難說沒有看到你的表模式。這裏有一個完整的例子,其中包括創建表和插入,嘗試重複每一個步驟,如果它仍然失敗,我建議:
- 嘗試從mysql命令行客戶端相同的查詢(MySQL的),看它是否是一個問題與PHP庫/連接到數據庫
- 發佈您的表架構,最理想的是我在下面展示的所有步驟。
localhost/test> CREATE TABLE datetest (id smallint(5) unsigned NOT NULL AUTO_INCREMENT, \
ctime DATETIME NOT NULL, PRIMARY KEY(id));
Query OK, 0 rows affected (0.03 sec)
localhost/test> SHOW CREATE TABLE datetest;
+----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| datetest | CREATE TABLE `datetest` (
`id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`ctime` datetime NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1 |
+----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
localhost/test> INSERT INTO datetest SET ctime='2016-10-22 20:42:11';
Query OK, 1 row affected (0.00 sec)
localhost/test> SELECT * FROM datetest;
+----+---------------------+
| id | ctime |
+----+---------------------+
| 1 | 2016-10-22 20:42:11 |
+----+---------------------+
1 row in set (0.00 sec)
另外一點需要注意的是,你應該從保留關鍵字date
望而卻步。看起來這不是你的問題,而是需要注意的地方。
表中的creation_date列的類型是什麼?儘量讓它時間戳。 – Sawalhah
A :::簡單:如果你打算使用'Y-m-d H:i:s',那麼你需要改變你的列爲DATETIME。 –
我只是試過,但沒有插入...我原來是用於Ymd H:i:s的DateTime,但只是嘗試了不同格式的時間戳 – Sol