使用sprintf和Mysql

时间:2014-08-24 21:30:53

标签: php mysql sql

将一个浮点变量写入MySql时遇到了一些问题,

我正在尝试输入的数字有8个尾随零,即:0.00026400

我需要将数字写入MySql表,保持所有零点。

我正在使用printf函数在回显之前添加尾随零,这样可以正常工作并且会回显0.00026400:

printf("%0.8f", $lastMinuteCount);

要获取格式化的数字,我可以写入Mysql数据库,我使用sprintf如下:

$lastCountFormatted = sprintf("%0.8f", $lastMinuteCount);

如果我回应它,​​它也可以正常工作并打印:0.00026400

但是只要我将其插入到MySql查询中,它就会发出0并输入:0.000264

UPDATE `the_table`
SET `1` = '$lastCountFormatted'
WHERE coinSymbol = '$coinSymbol'"

关于我做错的任何想法?我知道我可以在从数据库中提取数字之后对其进行格式化,但是如果可以的话,我宁愿将其格式化为输入。

感谢您一如既往的建议!

1 个答案:

答案 0 :(得分:1)

请确保列1的类型不是十进制或无符号,而应该是varchartext类型,因为它应该存储字符串而不是数字。数字不应该在小数点.

之后存储尾随0