我在
Doctrine Documentation中尝试这个部分,你可以:
手动编写DQL
对于你的sql buff,我们没有忘记你.您可以选择手动编写DQL查询并将其解析为Doctrine_Query实例或只执行它们.
$dql = "FROM User u,u.Phonenumbers p"; $q = Doctrine_Query::create()->parseQuery($dql);
或者您可以使用Doctrine_Query的query()方法执行它们.
$dql = "FROM User u,u.Phonenumbers p"; $q = Doctrine_Query::create()->query($dql);
然而,由于遇到以下错误,我遇到了困难:
Attempted to load class “Doctrine_Query” from namespace “AppBundle\Controller”.
Did you forget a “use” statement for another namespace?
你能帮帮我吗?
<?PHP namespace AppBundle\Controller; use Symfony\Component\HttpFoundation\Response; use Symfony\Bundle\FrameworkBundle\Controller\Controller; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use AppBundle\Entity\TblProduct; class DefaultController extends Controller { /** * @Route("/",name="homepage") */ public function indexAction() { $products = "SELECT * FROM TblProduct"; $q = Doctrine_Query::create()->query($products); if (!$products) { throw $this->createNotFoundException( 'No products registered yet.' ); } return $this->render('default/index.html.twig',array('products' => $products)); }
解决方法
这是
Doctrine 1.2而不是
Doctrine 2.5的一部分.在最新版本中,您只需使用createquery()在
Doctrine Query Language中创建查询.
<?PHP $dql = "FROM User u,u.Phonenumbers p"; $query = $em->createquery($dql); $users = $query->getResult();
或者你可以写Native SQL.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。