我正在使用MYSQL数据库,并想知道这是一个很好的做法。出生日期保存到MYSQL DB的时间戳或日期列类型
方式1 - 在DB中使用列类型作为时间戳。即将包含值如2012-11-13 00:00:00 方式2 - 使用列作为日期。即在数据库中将包含像2012-11-13这样的值。
这里的问题是,存储DOB。我们是否真的需要时间戳作为列类型?在我看来,DOB也不需要时间部分(00:00:00)。
它应该是时间戳,因为我们可以将该值存储为隐藏状态,因此即使有人看到数据库时,也不会有人看到它。要查看,我们必须在php中使用strtotime()。
请让我知道在数据库中存储DOB的正确方法。
有V WE需要时间DOB罕见的情况下,通常是'date'类型是足够的需求 –
如果您需要只有**出生日期**而不是出生日期和时间**在您的应用程序中,那么答案很明显 - 使用'DATE'作为数据类型。唯一不错的做法是不使用带时间部分的数据类型,因为实际上并没有使用它,因为在大多数情况下,查询**正确**与'timestamp' /'datetime'相比要棘手得多。 – peterm
它真的取决于你的应用程序需要什么。如果你的应用程序(前端)不关心'timestamp',那么只用'date'作为一个好的数据库管理员,如果不需要时间,就尽量保留需要的数据,那么为什么使用'时间戳' – Ashish