Errore di sintassi in più query in NHibernate 3 e MySQL
-
09-10-2019 - |
Domanda
ho usato per essere in grado di eseguire il codice riportato di seguito come un multi query in NHibernate 2.1 utilizza 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);
dove esempio LeagueInfoQuery è solo un oggetto di query personalizzata che può creare un ICriteria standard.
Tuttavia, dal momento che l'aggiornamento a NHibernate 3,0 ho ora ottenere un errore di sintassi. Il messaggio di eccezione è la seguente.
{ "Errore durante l'esecuzione selezioni: [SELECT count (*) come y0_ DA
League
this_ DOVE this_.User = ? P0; \ r \ nSelezionare this_.Id come y0_, this_.Name come y1_, min (f1_.Date) come y2_, max (f1_.Date) come y3_, contare (distinta t2_.Id) come y4_ FROMLeague
this_ join internoTeam
t2_ su this_.Id = t2_.League interno unisconoFixture
F1_ su this_.Id = f1_.League DOVE this_.User =? P1 GROUP BY this_.Name ORDER BY limite disc y0_ ? P1; \ r \ n] "}
interno Eccezione:
{ "Hai un errore nella SQL sintassi; controllare il manuale che corrisponde al server MySQL versione per la sintassi diritto di utilizzo vicino '' B68d9d4e-a958-4fb8-8490-9e4401572f38 '' at line 1" }
Quindi sembra un errore di sintassi, ma questo non ha usato accadere in v2.1 e se modificare l'SQL nel messaggio in modo che i parametri sono valori che posso farlo funzionare.
Allora, perché è questo errore ora che si verificano in NHibernate 3.0? Ho bisogno di configurare qualcosa in particolare per la sintassi MySQL e se sì, quali?
Saluti.
Soluzione
Questo è stato un problema con NHibernate 3, che ora è stato risolto (grazie! )