【问题标题】:How To Insert a DECIMAL(a,b) Value Into MYSQL [duplicate]如何将 DECIMAL(a,b) 值插入 MYSQL [重复]
【发布时间】:2014-08-11 13:21:01
【问题描述】:

我有一个包含 DECIMAL(10,6) 列的表。我有一个浮点数的字符串表示形式(例如 35.3123122)。我正在使用 php 插入值。我使用 floatval($string) 插入,但它不起作用。我也尝试插入字符串本身但没有成功。我是否需要完全格式化浮点值以匹配 10,6 标准。如果是这样,我该怎么做?

谢谢

【问题讨论】:

  • “它不起作用” - 很好的解释。在floatval 之后发布字符串以及插入失败时收到的确切错误消息(如果有)如何?
  • 今天的《猜我的密码》是由字母“P”和数字“35.3123122”带给大家的
  • @Pacemaker - 您想对您的声明下注吗?由于您不会显示代码,也不会尝试获取错误(如果出现问题,MySQL 总是会给您错误),所以我们只能玩 Mark 提到的游戏。
  • 回显您的插入查询并检查 mysql 错误
  • 不,您不必做任何不寻常或特别的事情。您甚至不需要将字符串转换为 PHP 内部浮点类型。它必须是一个字符串,例如10.123456。您不必将其填充为零,它只需包含小数点分隔符即可。您发布的输入太长,如果数字太长,您会收到 MySQL 警告,它会截断数字并仍然插入它。您的问题出在代码中,因此问题与代码有关。

标签: php mysql floating-point


【解决方案1】:

不确定这是否是您的问题,但“35.3123122”的值在小数点后有 7 位。 DECIMAL(10,6) 共 10 位,小数点后最多 6 位。

【讨论】:

  • 我尝试增加到 DECIMAL(11,7)。但仍然无法正常工作。
猜你喜欢
  • 2022-11-23
  • 1970-01-01
  • 1970-01-01
  • 2013-06-03
  • 1970-01-01
  • 1970-01-01
  • 2022-11-18
  • 2016-02-23
  • 2012-11-12
相关资源
最近更新 更多