2012-05-22 37 views
14

Tôi đang làm việc trong một ứng dụng Symfony2 và tôi cần sử dụng các thủ tục lưu sẵn để thực hiện một số quy trình hiệu suất cao.Cách thực hiện các thủ tục được lưu trữ với Doctrine2 và MySQL

Có cách nào để thực thi (và quản lý tham số) một thủ tục lưu trữ MySQL bằng Doctrine2?

SOLUTION:

$em = $this->getDoctrine()->getEntityManager(); 
$qb = $em->createNativeQuery(
     'CALL USR_P_UserRegistration (' . 
      ':iduser, :name, :surname, :birthday, :idlang, :idregistry' . 
     ')', 
     new ResultSetMapping() 
    ); 
$qb->setParameters(
    array(
     'iduser' => $c->getIduser(), 
     'name' => $c->getName(), 
     'surname' => $c->getSurname(), 
     'birthday' => $c->getBirthday(), 
     'idlang' => $c->getIdlang(), 
     'idregistry' => $c->getIdregistry() 
    )); 
$qb->execute(); 
$em->flush(); 

Trả lời

7

bạn có thể sử dụng Native SQL và thậm chí bạn có thể sử dụng thủ tục lưu trữ để thu hồi dữ liệu.

doc Native sql

hoặc bạn có thể xem liên kết này

How to use Stored Procedures with Symfony and Doctrine

+0

tôi nhận được một lỗi chung từ MySQL (xem chi tiết ở trên). Có lẽ tôi đang sử dụng phương pháp thực hiện sai? – unairoldan

Các vấn đề liên quan