Frage

Früher habe ich in der Lage sein den folgenden Code als Multi-Abfrage in NHibernate 2.1 mit MySQL

laufen
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);

Dabei gilt z LeagueInfoQuery ist nur eine benutzerdefinierte Abfrage Objekt, das eine Standard ICriteria erstellen können.

Da jedoch ein Upgrade auf NHibernate 3.0 Ich bekomme jetzt einen Syntaxfehler. Die Ausnahmemeldung ist wie folgt.

{ "Fehler Multi Kriterien ausführen: [SELECT Count (*) FROM als y0_ League this_ WHERE this_.User = p0;? \ r \ NSELect this_.Id als y0_, this_.Name als y1_, min (f1_.Date) als y2_, max (f1_.Date) als y3_, zählen (distinct t2_.Id) als y4_ FROM League this_ inneren Team T2_ beitreten auf this_.Id = t2_.League Exklusionsverknüpfung Fixture f1_ auf this_.Id = f1_.League WHERE this_.User = p1 GROUP BY this_.Name ORDER BY y0_ desc Limit ? P1; \ r \ n] "}

Innere Ausnahme:

{ "Sie haben einen Fehler in Ihrer SQL Syntax; Sie in der Bedienungsanleitung entspricht Ihrem MySQL-Server Version für die richtige Syntax zur Verwendung in der Nähe von '' B68d9d4e-a958-4fb8-8490-9e4401572f38 '' in Zeile 1" }

So ist es wie ein Syntaxfehler aussieht, aber diese nicht genutzt in v2.1 passieren und wenn ich bearbeiten die SQL in der Nachricht, so dass die Parameter sind Werte, die ich es an der Arbeit bekommen kann.

Also, warum ist dieser Fehler auftritt, jetzt in NHibernate 3.0? Muss ich configure etwas Bestimmtes für MySQL-Syntax und wenn ja, was?

Prost.

War es hilfreich?

Lösung

Das war ein Problem mit NHibernate 3, die aufgelöst (danke! )

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top