日期:2014-05-16  浏览次数:20674 次

datetime类型的默认值问题
mysql能不能像access或是mssql这样.插入记录的时候设定默认值now()之类的

------解决方案--------------------
在表定义的时候,各字段上通过DEFAULT子句指定的默认值必须是个常数,不可以是个函数,所以DATATIME colname DEFAULT now();这样的定义是错误的,但有个例外,就是TIMESTAMP类型,在定义的时候可以设置为TIMESTAMP colname DEFAULT CURRENT_TIMESTAMP,这样,在添加新记录的时候把这个字段设置为当前时间,但以后修改时不再刷新。

INSERT INTO的时候,VALUES可以是一个函数,比如 INSERT INTO tablename (colname) VALUES (NOW());