2010-12-06 27 views
0

I utilisé pour être en mesure d'exécuter le code suivant comme une requête multiple en utilisant NHibernate 2.1 MySQLErreur de syntaxe sur requête multiples dans NHibernate 3 et MySQL

var total = new LeagueInfoQuery { Count = true, User = CurrentUser }.CreateCriteria(session).FutureValue<int>(); 
var leagues = new LeagueInfoQuery { User = CurrentUser, PageSize = pageSize, Page = page, SortBy = sortBy, SortAsc = sortAsc }.CreateCriteria(session).Future<LeagueInfo>(); 
var results = PaginationHelper.CreateCustomPage<LeagueInfo>(leagues, pageSize, page, total.Value); 

où par exemple, LeagueInfoQuery est juste un objet de requête personnalisé qui peut créer un ICriteria standard.

Cependant, depuis la mise à niveau vers NHibernate 3.0, je reçois maintenant une erreur de syntaxe. Le message d'exception est le suivant.

{ "Erreur exécution multicritère: [SELECT COUNT (*) comme y0_ DE League this_ OÙ this_.User = p0; \ r \ nSélectionnez this_.Id comme y0_, this_.Name comme? y1_, min (f1_.Date) comme y2_, max (f1_.Date) comme y3_, comptage (t2_.Id distinct) comme y4_ dE League this_ jointure interne Team t2_ sur this_.Id = t2_.League jointure interne Fixture f1_ sur this_.Id = f1_.League O this this_.User =? P1 GROUPE DE this_.Name COMMANDER PAR 0_ limite desc p1; \ r \ n]? "}

Exception intérieure:

{" Vous avez une erreur dans votre syntaxe SQL ; consultez le manuel qui correspond à votre version serveur MySQL pour la bonne syntaxe à utiliser près « » b68d9d4e-a958-4fb8-8490-9e4401572f38 « » à la ligne 1" }

Il ressemble une erreur de syntaxe mais cela ne s'est pas produit dans v2.1 et si je modifie le SQL dans le message pour que les paramètres soient des valeurs, je peux le faire fonctionner

Alors pourquoi cette erreur se produit-elle maintenant dans NHibernate? 3.0? Dois-je configurer quelque chose en particulier pour la syntaxe MySQL et si oui quoi?

Cheers.

+0

Si vous pouvez reproduire le problème toujours juste en remplaçant les binaires NH, s'il vous plaît ouvrir un problème à l'adresse http (merci!): //jira.nhforge. org –

+0

Ok je le ferai dès que je le pourrai, j'espère que ce soir - merci. – Adam

+0

J'ai créé un problème avec un projet joint pour le démontrer http://216.121.112.228/browse/NH-2450 – Adam

Répondre

0

C'était un problème avec NHibernate 3 qui a maintenant été resolved