MySQL是否自动重新格式化插入到DATETIME类型列中的日期?


Does MySQL automatically re-format dates inserted in to a column of type DATETIME?

我理解MySQL中DATETIME的格式为YYYY-MM-DD HH:MM:SS

我正在使用Bootstrap日期拾取器,它发布了一个像07/30/2014这样的值。如何将其更改为"2014-07-30 00:00:00"?

我不希望用户看到小时等,但它必须在字符串中。是datepicker能够输出这样的字符串吗?

SQL
$stmt = $dbh->prepare("INSERT INTO bookings (forename, surname, site, badge, start, end) VALUES (:forename, :surname, :site, :badge, :start, :end)");
...
$stmt->bindParam(':start', $start);
$stmt->bindParam(':end', $end);

是的,但如果它是一个字符串,你应该使用STR_TO_DATE()来转换它像这样:

$msql ="insert into table (birthdate)value(STR_TO_DATE('$yourdate','%d/%m/%Y'))";
mysql_query($msql);

我做了什么:我将字符串$yourdate转换为DateTime值。

PS: %d/%m/%Y应该是字符串中的日期格式,而不是服务器示例中的日期格式:如果你的日期是这样的22/2/2014,应该没问题,但如果你的日期是这样的:2/22/2014你应该给它这样的:'%m/%d/%Y'