有人可以提供一些明確的(事實支持)理由來使用/學習DQL與SQL,當需要一個自定義查詢時使用Doctrine Classes?使用Doctrine使用DQL而不是SQL有什麼好處?
我覺得,如果我不能使用ORM的內置關聯功能來實現的東西我平時寫在擴展學說或DoctrineTable類的定製方法。在這種方法中,將所需的數據寫入直接的SQL(使用具有適當的準備語句/注入保護等的PDO)。 DQL看起來像學習/調試/維護的附加語言似乎沒有提供足夠令人信服的理由在大多數常見情況下使用。 DQL似乎並不比SQL複雜得多,因爲我們懷疑如果沒有紮實的SQL理解,就可以有效地使用DQL。大多數核心SQL語法端口在您使用PHP的最常用數據庫中相當好。
我在想什麼/忽略?我確信有一個原因,但我想聽聽那些有意使用它的人,以及嘗試使用plain-ole SQL的好處。
我不是在尋找支持的ORM的說法,只是DQL需要做核心「得到逐關係」型需求之外的東西,在傳統的LAMP設置時(使用MySQL,Postgres的,等等。 )
我沒有事實支持的參數,但是我發現名稱關係比聯接條件更容易使用,不易出錯並且編寫起來很繁瑣。 – 2012-07-17 20:42:23