出生日期保存到具有时间戳或日期列类型的MYSQL DB

 黄智铭铭铭铭_216 发布于 2023-02-13 20:21

我正在使用MYSQL数据库,想知道这是一个很好的做法.

方法1 - 在DB中使用列类型作为时间戳.ie将包含类似2012-11-13 00:00:00方式2的值 - 使用列作为日期.ie将包含数据库中的2012-11-13等值.

这里的问题是,存储DOB.我们真的需要时间戳作为列类型吗?在我看来,DOB也不需要时间段(00:00:00).

它应该是时间戳,因为我们可以将值存储为隐藏,这样即使有人看到数据库,也没有人可以查看它.要查看,我们必须使用php中的strtotime().

请告诉我在数据库中存储DOB的正确方法.

1 个回答
  • 我建议使用DATE.

    TIMESTAMP的范围为'1970-01-01 00:00:01'到'2038-01-19 03:14:07'(UTC),因此在大多数情况下它不适合DOB.

    可以使用DATETIME,但您应该问自己:您是否希望用户填写出生时间?如果不是 - 使用DATE.

    通常这不是什么大问题,但您也可以考虑所需的存储空间:

    DATE:      3 bytes 
    TIMESTAMP: 4 bytes
    DATETIME:  8 bytes
    

    2023-02-13 20:25 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有