“GeomFromText”不存储在数据库中

时间:2013-04-10 06:26:16

标签: php mysql

我已尝试将数据保存到CI

中的表格中

喜欢:

$ geomatchinfo = array (

[Latitude] => 45.8556528
[Longitude] => 22.9565858
[Geom] => GeomFromText('Point(45.855653 22.956586)')
[Radius] => 15.0
[Mode] => white
[Name] => dsad
[Description] => asd
[Formatted] => asdasd, Deva, Romania
[Address] => a:5:{s:7:"address";s:6:"asdasd";s:5:"route";s:6:"asdasd";s:4:"city";s:4:"Deva";s:5:"state";s:9:"Hunedoara";s:7:"country";s:7:"Romania";}

Geomatch ::创建($ geomatchinfo);

但它给我的错误就像

致命错误:未捕获的异常'ActiveRecord \ DatabaseException',消息'22003,1416,无法从D:\ xampp \ htdocs \ tr-中发送到GEOMETRY字段的数据中获取几何对象'新鲜\火花\ PHP-了activerecord \ 0.0.2 \厂商\ PHP-了activerecord \ lib中\ Connection.php:312

我有数据库字段名称“Geom”数据类型“geometry”。

1 个答案:

答案 0 :(得分:3)

如果您有兴趣在CI中使用插入查询中的函数,则需要分别使用set方法进行插入

GeomFromText('Point(45.855653 22.956586)')

你必须在CI的set方法中将第三个参数作为false传递。像这样。

$this->db->set("Geom", "GeomFromText('Point(45.855653 22.956586)')", FALSE);

可能对你有帮助。