Php 在原则2中加载/保存字段时透明地执行SQL函数
我正在使用Doctrine2,有一个实体包含表示几何体的字符串属性:Php 在原则2中加载/保存字段时透明地执行SQL函数,php,orm,doctrine-orm,doctrine,doctrine-query,Php,Orm,Doctrine Orm,Doctrine,Doctrine Query,我正在使用Doctrine2,有一个实体包含表示几何体的字符串属性: class Entity { /** @Column(type="string") */ protected $wkt; } 我希望将此字段透明地保存到数据库中的字段中,如下所示: INSERT INTO ... VALUES(GeomFromText(?)) SELECT AsText(field) FROM ... 我查看了,但找不到在哪里应用这样的SQL函数 有什么想法吗?也许你可以看看: 然后将该字
class Entity {
/** @Column(type="string") */
protected $wkt;
}
我希望将此字段透明地保存到数据库中的字段中,如下所示:
INSERT INTO ... VALUES(GeomFromText(?))
SELECT AsText(field) FROM ...
我查看了,但找不到在哪里应用这样的SQL函数
有什么想法吗?也许你可以看看:
然后将该字段设置为返回值。刚刚发现此功能当前未实现,但确实存在针对它的功能请求: 它可能在第2.2条中提供 更新:此功能已在即将发布的2.2中得到确认
更新:现在可在条令2.2中使用 澄清一下,您希望在修改另一个字段时更新数据库中的一个字段?我不太熟悉条令,但你可能会使用。不,实际上我只需要在保存/水合实体时在WKT(文本)和几何体(二进制)之间进行透明转换!数据库通过GeomFromText()和AsText()SQL函数来处理这个问题。。。并且没有给出检索值的解决方案!
/**
* @PrePersist
*/
public function sendOptinMail() {
//do sql query : SELECT GeoFromText()...
$this->yourField = ...
}