我正在使用Laravel(5.5)Lumen,PHP 7.2,MySQL 5.7,并且我在一个使用MySQL点空间字段类型的表中有一个字段。它是正确创建的,但我无法弄清楚如何从Seeder
填充它。
该字段是在如下声明的迁移中创建的:
$table->point('location')->spatialIndex();
$table
是Blueprint
。
然后我尝试像这样播种:
DB::table('locations')->insert(
[
'location' => "ST_GeomFromText('POINT(140.7484404 -73.9878441)')"
]
);
或:
'location' => 'POINT(140.7484404 -73.9878441)'
我也试过这个,因为我添加了grimzy/laravel-mysql-spatial
包:
'location' => new Grimzy\LaravelMysqlSpatial\Types\Point(140.7484404, -73.9878441)
但所有这些都给出了一些变化:
SQLSTATE [22003]:数值超出范围:1416无法从发送到GEOMETRY字段的数据中获取几何对象
这样做的正确方法是什么?