0
将Symfony与Sql Server一起使用,从我读到的内容看来,与数据库的连接似乎并不稳定。订购时发生SQL Server错误 - Symfony2
只要我使用OrderBy方法,我得到一个错误:
下面是一个例子:
$qStores =
$this->getManager()
->createQueryBuilder()
->select('rpdv')
->from('MainBundle:PointDeVenteReference', 'rpdv')
->andWhere('rpdv.partenaireClient = :id_partner ')
->setParameter('id_partner', $this->getUser()->getPartenaire()->getIdPartenaire())
->orderBy('rpdv.idPointDeVenteReference' , 'DESC')
->setFirstResult(0)
->setMaxResults(30);
$stores = new Paginator($qStores, FALSE);
和错误:
An exception has been thrown during the rendering of a template ("An exception occurred while executing
'SELECT DISTINCT TOP 30 id_point_de_vente_reference0
FROM (SELECT p0_.id_point_de_vente_reference AS id_point_de_vente_reference0,
p0_.reference AS reference1,
p0_.date_derniere_modification AS date_derniere_modification2,
p0_.blocage AS blocage3
FROM point_de_vente_reference p0_
WHERE p0_.id_partenaire_client = ?
ORDER BY p0_.id_point_de_vente_reference DESC) dctrn_result
ORDER BY id_point_de_vente_reference0 DESC'
with params [2829]:SQLSTATE[42000]:
[Microsoft][SQL Server Native Client 11.0][SQL Server]
The ORDER BY clause is invalid in views, inline functions, derived tables, subqueries, and common table expressions,
unless TOP, OFFSET or FOR XML is also specified.") in MainBundle:Default:store/list.html.twig at line 79.
我试图更改类SQLServerPlatform在网上发现更正,但没有成功。
你有什么想法吗?
Thx!
编辑:
这个bug似乎涉及到分页程序与第二个参数为true。将它传递给false,我没有错误
好吧,你看了例外呢?很明显,您在错误的上下文中使用ORDER BY:ORDER BY子句在视图,内联函数,派生表,子查询和公用表表达式中是无效的,除非还指定了TOP,OFFSET或FOR XML, – kix 2014-10-08 07:50:03
好的,但这个查询是由教条生成的。我的第一个代码块对我来说似乎是正确的...... – Neufman 2014-10-08 07:52:49
那么,代码*可能是正确的,但您使用的底层存储似乎不允许排序。 – kix 2014-10-08 08:12:12