mysql的insert语句怎么插入当前时间?
问题描述
mysql的insert语句怎么插入当前时间?
比如有一张表users,有id,name,eamil,password,created_at,updated_at字段。我想插入一条数据,这样写:
INSERT INTO users VALUES (Null, ’xiaoming’,’xiaoming@example.com’,’ffahifuhaif’,’’,’’ );
问题:1、id是自增长的,上面语句中id字段写Null正确么?2、created_at,updated_at两个字段要插入当前时间,应该怎么做?
问题解答
回答1:1,你的语法错误。INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)ID不用写进去,会自动赋值的。
2,时间字段也可以用默认值自动插入当前时间。http://s11.sinaimg.cn/mw690/0...字段类型设置成时间戳 timestamp,默认值填写 CURRENT_TIMESTAMP
插入数据的时候自动就会保存时间到该字段。
回答2:设置为auto_increase的字段,你设置其他值是没有用的。
如果你使用php,插入当前的时间是 NOW();
回答3:不需要的字段可以不填
INSERT INTO users(name,eamil,password) VALUES ( ’xiaoming’,’xiaoming@example.com’,’ffahifuhaif’);
还有两个时间的问题 可以在数据库里这样设置:
created_at 默认值设置为 CURRENT_TIMESTAMP
updated_at 默认值设置为 CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
要求mysql版本大于5.6.5据体看这个http://stackoverflow.com/a/4897134
回答4:首先确定你时间是以什么数据类型存储的,是int?date?还是timestamp?datetime?再根据具体的类型做处理
相关文章:
