gpt4 book ai didi

mysql - 如何在mysql数据库中存储日期?

转载 作者:可可西里 更新时间:2023-11-01 07:48:37 26 4
gpt4 key购买 nike

如果我有一个日期,例如 mm/dd/yyyy。我怎样才能让 mysql 以这种格式实际存储日期。这是否可能或必须以 yyyy/mm/dd 的形式存储并稍后转换?

我想做的是以 mm/dd/yyyy 格式插入日期,但数据库不允许。它需要 yyyy/mm/dd

最佳答案

你这样做的原因是什么?我看不到它有任何合理的用途。

你不能改变 MySQL 存储日期的方式,不。但是你当然可以在读/写它们时格式化它们。您可以像这样在 SQL 查询中执行此操作:

例如,您可以使用 STR_TO_DATE 函数在插入日期时格式化日期:

INSERT INTO mytable (mydate) VALUES (STR_TO_DATE('12/31/2009', '%m/%d/%Y'))

反之亦然:

SELECT DATE_FORMAT(mydate, '%m/%d/%Y') FROM mytable /* returns 12/31/2009 */

但正如 FactalizeR 指出的那样,在查询中执行此操作并不是一个好习惯,应该将其移动到脚本中,就像这样(考虑到您使用的是 PHP)。

$date = '12/31/2009';
$date = date('Y-m-d', strtotime($date));
mysql_query("INSERT INTO mytable (mydate) VALUES ({$date})");

反之亦然

$date = mysql_result(mysql_query("SELECT mydate FROM mytable"), 0, 0);
$date = date('m/d/Y', strtotime($date)); //returns 12/31/2009

关于mysql - 如何在mysql数据库中存储日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1496792/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com