MySQL NOW()仅返回一年
MySQL docs about NOW()函数 根据函数是在字符串上下文中使用还是在数字上下文中使用,以“YYYY-MM-DD HH:MM:SS”或yyyyymmddhhmmss.uuuuu格式的值形式返回当前日期和时间。该值以当前时区表示 这是我的疑问MySQL NOW()仅返回一年,mysql,datetime,time,Mysql,Datetime,Time,MySQL docs about NOW()函数 根据函数是在字符串上下文中使用还是在数字上下文中使用,以“YYYY-MM-DD HH:MM:SS”或yyyyymmddhhmmss.uuuuu格式的值形式返回当前日期和时间。该值以当前时区表示 这是我的疑问 $sql = " INSERT INTO `users` ( `username`, `password`, `email`, `time` ) VALUES ('{$username}', '" . sha1( $pass
$sql = "
INSERT INTO `users` ( `username`, `password`, `email`, `time` )
VALUES ('{$username}', '" . sha1( $password ) . "', '{$email}', NOW() )
";
问题是在数据库中我没有完整的日期时间,只有年份。有什么解决办法吗
它是int(10),就像我使用UNIX时间戳时一样
NOW()
仅适用于DATETIME
字段
您需要将字段转换为DATETIME
(首选方法),或者使用
试一试
你肯定应该使用
时间戳
或日期时间
作为你专栏的类型。我也遇到了同样的问题,在读到这个问题之前,我被难倒的时间最长。我使用mysql的now()函数来更新成员的上次登录时间
MySQL的now()以字符串形式返回日期时间,如YYYY-MM-DD HH:MM:SS
——我在某个地方停止使用它,开始使用time()(UNIXTIME)
(使其更易于使用),它返回一个数字字符串,如1352254528
。但是不能在datetime字段中存储这样的数字字符串,同样,也不能在int(11)
字段中存储YYYY-MM-DD HH:MM:SS
。后者只会导致存储年份
最后,您应该使用:
int(11)
如果要使用PHP的time()
函数将时间存储为一个数字字符串
或
DATETIME字段
如果要使用MySQL的NOW()
函数。日期字段是什么类型的?您能给出一个示例值吗?嗯,美味的SQL注入。@Sdaz MacSkibbons,就像我以前没有验证输入一样。。。xD@Pekka它是int(10),就像我使用UNIX时间戳时一样。
UNIX_TIMESTAMP(NOW())
strtotime(now())