sql >> Base de Datos >  >> RDS >> Mysql

MySQL está convirtiendo mis valores de marca de tiempo a 0000-00-00

Eso ocurre con bastante frecuencia.
Está confundiendo la marca de tiempo mysql, que en realidad es un valor similar a DATETIME, con la marca de tiempo UNIX, que es el número de segundos transcurridos desde 1970-01-01.

Debe cambiar el formato del campo o el valor de inserción.
También puede encontrar algunas funciones mysql útiles:CURDATE() o NOW(), por ejemplo

$sql = 'INSERT INTO users VALUES (NULL,:username,:password,:email,NOW(),NOW())';
$stmt = $pdo->prepare($sql);
$stmt->execute(array($username, $password, $email));

Pero personalmente evitaría las marcas de tiempo mysql. se pueden cambiar inesperadamente, arruinando todos sus datos. Usaría DATETIME y establezca todos los valores manualmente.