MySQL中的時間類型可以幫助我們方便地存儲和操作時間數據。
常用的時間類型有:
DATE:日期,格式為YYYY-MM-DD。 TIME:時間,格式為HH:MM:SS。 DATETIME:日期和時間,格式為YYYY-MM-DD HH:MM:SS。 TIMESTAMP:時間戳,格式為YYYY-MM-DD HH:MM:SS。
其中,DATETIME和TIMESTAMP最常用,也是最容易混淆的。
DATETIME的范圍是從“1000-01-01 00:00:00”到“9999-12-31 23:59:59”,占用8個字節的存儲空間,可以存儲精確到秒的時間數據。
TIMESTAMP的范圍是從“1970-01-01 00:00:01”到“2038-01-19 03:14:07”,占用4個字節的存儲空間,可以存儲精確到秒的時間數據。與DATETIME不同,TIMESTAMP還可以自動更新時間戳,用于記錄數據的插入或修改時間。
CREATE TABLE example ( id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (id) );
在上面的例子中,創建了一張名為“example”的表,其中包含id、name和兩個timestamp類型的字段。創建時間(created_at)使用了DEFAULT CURRENT_TIMESTAMP,即默認值為當前時間;更新時間(updated_at)使用了ON UPDATE CURRENT_TIMESTAMP,即在更新數據時自動更新時間戳。
時間類型是MySQL中非常有用的數據類型,也是許多應用程序必備的一部分。無論是存儲還是操作時間數據,MySQL都提供了豐富的解決方案。