2012-04-02 57 views
6

我正在構建的應用程序需要具有OOP風格的MySQL查詢生成器。我希望能夠使用PHP靈活地構建複雜的查詢,並使用我自己的數據庫驅動程序獲取生成的查詢字符串以供執行。MySQL查詢生成器PHP類

有誰知道PHP的一個很好的獨立查詢生成器嗎?請注意,我不需要數據庫驅動程序我需要裸露的MySQL查詢構建器類(最好使用駝峯式函數和變量名稱編寫)。

回答

5

最後我把Doctrine ORM

,並修改了它有點構建SQL,而不是DQL

這工作非常好,它能夠構建複雜的查詢。

編輯: 您可以在Stingle框架中找到我最終的穩定實現。看看Db/QueryBuilder插件。

+0

你能更新鏈接嗎? – TheCrazyProfessor 2016-12-21 21:57:25

+0

更新了鏈接,請看看 – 2016-12-23 13:50:12

0

查詢構建器有一個版本(LGPL許可)。我沒有用它,但你可能想看看它,如果它適合你的目的: http://code.google.com/p/mysql-query-builder/

+0

這非常好,但它缺乏使左,內,外連接的能力。 – 2012-04-02 12:51:02

+3

它如何能「非常好」,但不支持連接?這非常重要。它也沒有被觸及超過3年,可能有不確定的支持新的PHP版本。 – Cylindric 2012-04-04 16:24:00

2

DSQL被寫入 - 查詢生成器爲PHP正是你要尋找什麼對,沒有依賴性,有MIT許可證:

$query = new atk4\dsql\Query(); 
$query ->table('employees') 
    ->where('birth_date','1961-05-02') 
    ->field('count(*)') 
    ; 
echo "Employees born on May 2, 1961: ".$query->getOne(); 

https://github.com/atk4/dsql

文檔:http://dsql.readthedocs.io/