将类似日期的字符串保存到数据库,但MYSQL将其转换为十进制字符串

时间:2018-01-25 17:42:40

标签: php mysql decimal varchar

我试图使用一行php将字符串变量保存到mysql中。

'UPDATE `printed` SET `letterReturned`= '.$returnedDate.'  WHERE `defendantId` = '. $defendantId.';';

$ returnedDate是一个看起来像这样的字符串' 10/01/208'。我已经用gettype验证了它是一个字符串,当它进入但数据库的最终结果是:0.004955401387512388

如何以小数形式保存?我很难过,并且通过Google搜索无法找到与此相关的任何内容。这种事必须有一个名字。

任何想法都非常感激。请赐教。

1 个答案:

答案 0 :(得分:4)

有趣的情况!!! :d

请注意,计算10/1/2018 = 0.004955401387512388

您的原始查询分配中缺少引号,然后在将值插入表之前执行算术分割。

尝试:

$query = "UPDATE `printed` SET `letterReturned`= '".$returnedDate."'  WHERE `defendantId` = ". $defendantId.";";

根据评论中的建议,请查看When to use single quotes, double quotes, and back ticks in MySQL以获得澄清。