MySQL中可以使用NOW()函數(shù)來表示當(dāng)前時間,它會返回一個timestamp類型的值。
如果需要在插入或更新數(shù)據(jù)時將某個時間字段默認(rèn)為當(dāng)前時間,可以將字段類型設(shè)置為timestamp,并將默認(rèn)值設(shè)置為NOW()。
CREATE TABLE mytable ( id INT NOT NULL AUTO_INCREMENT, name VARCHAR(30) NOT NULL, create_time TIMESTAMP DEFAULT NOW(), PRIMARY KEY (id) );
在這個例子中,創(chuàng)建表時給create_time字段設(shè)置了默認(rèn)值為NOW(),這樣在插入數(shù)據(jù)時如果沒有指定create_time字段的值,MySQL會自動將其設(shè)置為當(dāng)前時間。
如果在需要設(shè)置默認(rèn)值的表中已經(jīng)存在數(shù)據(jù),可以使用ALTER TABLE語句來修改字段的默認(rèn)值:
ALTER TABLE mytable ALTER COLUMN create_time SET DEFAULT NOW();
這樣可以將所有之前沒有設(shè)置create_time字段值的記錄的create_time字段都自動設(shè)置為當(dāng)前時間。