【发布时间】:2011-10-25 05:37:22
【问题描述】:
我有一个名为“Places”的表格来保存有关地点的信息
+------------------+--------------+-----+-- +---------+----------------+ |领域 |类型 |空 |钥匙 |默认 |额外 | +------------------+-----------+------+------+-- -------+----------------+ |编号 |整数(11) |否 |优先级 |空 |自动增量 | |地名 | varchar(120) |否 | |空 | | |纬度 |浮动(10,6) |否 | |空 | | |经度 |浮动(10,6) |否 | |空 | | +------------------+-----------+------+------+-- -------+----------------+
现在,当我尝试通过 cakephp 中的 Model 向表中插入值时,比如
[位置] => 数组
(
[place_name] => St Francis De Sales
[纬度] => 42.381486
[经度] => -71.066718
)
从 cakephp 执行的查询将值四舍五入为 4 小数,我不希望这种情况发生..
插入“地点” (`place_name`, `latitude`, `longitude`) 值('St Francis De Sales',42.3815,-71.0667)
当我检查表格时,纬度和经度值被四舍五入或更改..
+-------------------+-----------+-- ----------+ |地名 |纬度 |经度 | +-------------------+------------+-- --------+ |圣弗朗西斯德销售教堂 | 42.379501 | -71.062798 | +-------------------+------------+-- --------+
直接从 mysql 控制台插入值没有问题。所以,我想这是一个与 cakephp 相关的问题。我该如何解决这个...??
【问题讨论】:
-
您是否尝试过打开 CakePHP 调试信息并查看实际的插入查询是什么?
-
@Xint0 是的,查询类似于 INSERT INTO
places(place_name,latitude,longitude) VALUES ('St Francis De Sales', 42.3815, -71.0667) 它已经在插入表格之前对那里的值进行四舍五入。 -
执行
debug($this->data); exit;之前$this->Model->save()发生;所有数据都按原样显示了吗? -
@Ross 我也试过了.. $this->data 保持不变。此更改发生在运行插入查询之前。
标签: mysql cakephp floating-point