mysql时间戳和php查询

Cri*_*pto 1 php mysql sql

我有一个MySQL数据库.所有字段,我分配,我有我的日期字段的日期戳.它自动生成YYYY-MM-DD HH:MM:SS这样的2011-11-21 21:31:37 但是,我希望它在两个不同的列中这样做:

带YYYY-MM-DD或的日期字段2011-11-21

带HH:MM:SS或的时间字段21:31:37

这是我的插入PHP代码

$sql= "INSERT INTO  `db`.`table` (`id` ,`fkid` ,`paid` ,`date`)
VALUES (NULL, '$userid', '0', CURRENT_TIMESTAMP);";
Run Code Online (Sandbox Code Playgroud)

我尝试过CURRENT_DATESTAMP,但它不起作用.

问题的第二部分是:如何制作表格,使其适用于正确的代码?该字段的结构应该是文本类型还是日期?

Mic*_*ski 5

我不建议将时间戳拆分为单独的日期和时间列.相反,最简单的方法是使用一个DATETIME列,并使用MySQL函数查询它的日期和时间部分,DATE()并且TIME():

SELECT DATE(`date`) AS d, TIME(`date`) AS t FROM db.dable;
Run Code Online (Sandbox Code Playgroud)

插入时,您可以使用该NOW()功能设置当前时间戳. `CURRENT_TIMESTAMP()是...的同义词NOW().

$sql= "INSERT INTO  `db`.`table` (`id` ,`fkid` ,`paid` ,`date`)VALUES (NULL ,  '$userid',  '0', NOW());";
Run Code Online (Sandbox Code Playgroud)