检索数据SQL小于存储的小数

时间:2014-07-30 17:56:55

标签: sql pdo database-connection decimal

在我的数据库中,我有存储的值:

quant = 1335.326233552119

但是当我使用PDO_MYSQL来检索它(select quant from table等)时,返回的值是:

  quant = 1335.3262335521

如何获得整个储值?

更新

当创建此字段(quant)时,它被选为“double”作为类型,但未定义任何大小。 (也许这些信息很重要)

  $db_name = 'databasename';

  $pdo = new PDO("mysql:host=localhost; dbname=$db_name", $user, $password);  
  $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
  $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

  $consulta = $pdo->prepare('select quant from table where (x=?) and (y=?)'); 
  $consulta->execute(array($x,$y));

  $result = $consulta->fetchObject()
  var_dump($result->quant);    //1335.3262335521

1 个答案:

答案 0 :(得分:0)

在我自己的网络服务器上无法重现错误之后,解决办法就是强制PHP在number_format期后强制推出更多数字:

echo number_format($consulta->fetchColumn(), 12);

这可能需要对PHP的设置和配置执行某些操作。 如果我应该了解更多信息,我会在这里添加。