2014-09-10 50 views
0

在我的mysql数据库表中,我有两列称为“日期”和“时间”。 “date”数据类型设置为DATETIME,“time”数据类型设置为TIMESTAMP。我想要做的只是在“日期”列中存储唯一日期,并且只在“时间”列中存储时间。我的表名是“贷款”。我不擅长SQL查询。有人请告诉我如何做到这一点。在mysql数据库中使用默认值分隔存储时间和日期

而且我还有一些时区的问题。我想将我的数据库时间格式转换为UTC -5:00(美国时间)。如何在不改变我的PC时间的情况下做到这一点?

+0

这听起来像个坏主意。 – Strawberry 2014-09-10 16:38:42

+0

为什么?如果这不是个好主意,我该如何在mysql中做到这一点。我应该改变数据类型吗? – sameera 2014-09-10 16:42:20

+0

你能否请求解释我该如何做到这一点? – sameera 2014-09-10 16:44:28

回答

0

将DATE和TIME分隔为相同的事件是一个坏主意。我会去存储它在简单的DATETIME字段。

但是你可以用这个

给日期字段类型DATE(不DATETIME)和时间字段类型TIME(是的,它存在,而不是TIMESTAMP)

现在,这将允许你存储日期做YYYY-MM-DD和时间HH:MM:SS

要设置你的MySQL服务器的时区,你可以用这一个

How do I set the time zone of MySQL?

+0

感谢您的回复。您可以给我鞋款我输入Default字段的值是多少?我可以把YYYY-MM-DD和HH:MM:SS更新为默认字段吗? – sameera 2014-09-10 17:44:27

+0

它始终给我提供相同的错误ERROR 1064:你的SQL语法错误;检查与您的MySQL服务器版本对应的手册,以便在第2行的'HH:MM:SS AFTER'lid''附近使用正确的语法 SQL Statement: ALTER TABLE'wa quis'.'loans' ADD COLUMN'time' TIME NULL DEFAULT HH:MM:SS after'lid' – sameera 2014-09-10 17:45:34

+0

感谢您的回答。 – sameera 2014-09-13 15:53:11

相关问题