Symfony2:与DBAL等效的flush()/ perist()

时间:2015-05-21 06:13:33

标签: symfony doctrine entity dbal

我想知道是否有与DBAL相同的$ em-> persist($ entity)或$ em-> flush()?

我的意思是,DBAL如何与实体合作?我正在处理不是由doctrine处理的实体:使用SELECT ...使用DBAL检索数据到水合实体,如果我必须更新数据库中的东西,我是否必须使用DBAL insert()/ update()这里所述的功能:http://docs.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/data-retrieval-and-manipulation.html

您是否知道在使用表单时记录对实体所做更改的简单方法?

我希望我能理解,谢谢你的阅读。

1 个答案:

答案 0 :(得分:1)

DBAL中你没有任何实体,因为这只是 D atabase A bstraction L ayer - 它的责任是制作确保在运行查询时它将在各种数据库引擎上正常运行。

处理实体是 O bject- R elational M 应用程序库(如DoctrineORM)的责任。

因此flush中没有persistDBAL。要在DB上执行更新,您需要运行像

这样的查询
$conn->executeUpdate('UPDATE user SET username = ? WHERE id = ?', array('jwage', 1))