2015-05-21 65 views
0

我想知道是否有任何等同於$ em-> persist($ entity)或$ em-> flush()與DBAL?Symfony2:與DBAL沖洗()/ perist()的等效

我的意思是,DBAL如何與實體協同工作?我正在處理的不是由教條處理的實體:數據水合實體是用DBAL使用SELECT檢索的,如果我必須更新數據庫中的東西,是否必須使用DBAL insert()/ update()函數作爲在這裏陳述:http://docs.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/data-retrieval-and-manipulation.html

您是否知道一種簡單的方法來記錄在使用表單時對實體所做的更改?

我希望我能理解,謝謝你的閱讀。

回答

1

DBAL你沒有實體,因爲這只是d atabase 一個 bstraction 大號艾爾 - 它的責任是確保當你運行一個查詢它會得到妥善的各種數據庫引擎運行。

與處理的實體是ö bject- ř elational 中號 apping庫(像DoctrineORM)責任。

因此沒有等效的flushpersistDBAL。要執行數據庫更新,您需要運行查詢如

$conn->executeUpdate('UPDATE user SET username = ? WHERE id = ?', array('jwage', 1)) 
+0

有道理......我不好理解,謝謝 – YukiAsuna