2011-09-08 53 views
1

我对我的项目使用了symfony框架,但是很多时候我很困惑在doctrine模式下编写mysql查询,所以,请告诉我如何在symfony中编写自定义查询, like如何在symfony中编写自定义查询

SELECT * FROM USER WHERE A.ID = 'X3B8882' 
+0

你的答案是在http://stackoverflow.com/questions/5324960/execute-custom-sql-in-symfony –

+0

给你说的是Symfony的-2.0或之前的所有版本? – gilden

回答

1
$query="SELECT * FROM USER WHERE A.ID = 'X3B8882'"  

$conn = Doctrine_Manager::getInstance()->connection(); 
    $stmt = $conn->prepare($query); 
    $stmt->execute(); 
    while ($row = $stmt->fetch()) { 
     $results[] = $row['sm_mnuitem_webpage_url'] ; 

    } 
2

您的SQL是无效的,但假设是A到用户表的引用:

$user = Doctrine_Query::create() 
    ->from("User a") 
    ->where("a.id = ?", "X3B8882") 
    ->fetchOne(); 

或替代地

$user = UserTable::getInstance()->findOneById("X3B8882"); 

这是最基本的查询之一,所以我强烈建议你阅读doctrine主页上的文档。