Trong Học thuyết bạn có thể tạo DQL trong 2 cách sau:học thuyết: QueryBuilder vs createQuery?
EntityManager :: createQuery:
$query = $em->createQuery('SELECT u FROM MyProject\Model\User u WHERE u.id = ?1');
QueryBuilder:
$qb->add('select', 'u')
->add('from', 'User u')
->add('where', 'u.id = ?1')
->add('orderBy', 'u.name ASC');
Tôi tự hỏi những gì là sự khác biệt và đó nên Tôi sử dụng?
Nhưng không có phí trên phân tích cú pháp chuỗi DQL trong trường hợp đầu tiên? Hoặc các nhà xây dựng làm cho cùng một chuỗi DQL như là một kết quả là tốt? –
Có, QueryBuilder tạo chuỗi DQL cho bạn. Sau đó, DQL được phân tích cú pháp. – Dennis