2014-08-29 42 views
2

我正在尝试创建一个表,其中包含日期和时间列,用于在条目记录在数据库中时存储日期和时间信息。在MySQL文档中显示以下示例:如何使日期和时间列创建一个MySQL表?

CREATE TABLE t1 (
    ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP, 
    dt DATETIME DEFAULT CURRENT_TIMESTAMP 
); 

问题是我想为日期和时间分隔字段。在另一个网站上,我发现这段代码符合我对日期的需求:

CREATE TABLE test (id INT, date_added DATE); 

但是我当时无法找到类似的东西。 下面的一段代码是否会记录单独的日期和时间字段,这些字段将在记录条目时填充?只有

CREATE TABLE test (id INT, date_added DATE, time_added TIME); 
+2

有什么区别?将它们分割成两个字段与将它们保持在同一字段中相同。重要的是你有可用的数据。 – 2014-08-29 17:04:23

+0

不,用最后的代码片段,你现在需要依靠你的应用程序来为你做。 – danronmoon 2014-08-29 17:04:25

+0

@AlexandreSantos我是否需要时间戳和日期时间,好像他们做同样的事情。 – Urler 2014-08-29 17:05:41

回答

4

为日期和时间分开列是毫无意义的。它没有多大意义

您可以创建表这样

CREATE TABLE timeDate (
    id INT, 
    ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP, 
); 

如果你想要日期部分使用此查询

SELECT DATE(`ts`) FROM timedate WHERE id =someId 

如果你想在部分时间使用该查询

SELECT TIME(`ts`) FROM timedate WHERE id =someId 
0
CREATE TABLE t1 (
    ts TIME, 
    dt DATE 
); 

时间戳字段可以有默认CURRENT_TIMESTAMP。它包含日期和时间。 TIME和DATE字段将需要由您的应用程序设置。

相关问题