Diky. Nevim, proc jsem si myslel, ze se jedna o driver based reseni. public String Dialect.getLimitString() je presne to, co jsem hledal.
Ted se jeste musim zamyslet, jestli pouzit cely Hibernate nebo pouze onu metodu. 2010/3/11 Lukas Barton <[email protected]>: > Hibernate to dela - metoda setMaxResults > Ale nemusi to chodit na vsech DB, zalezi na konkretnim dialektu - jeste > nedavno to neumel pro MS SQL v kombinaci s setFirstResult. > > Z tech dialektu se da vykoukat konkretni SQL implementace pro dane databaze. > > Lukas > > 2010/3/11 Oto Buchta <[email protected]> >> >> Zdravím, >> mám tabulku o milionech záznamů, kde primárním klíčem je long, ale >> nejedná se o seqenci. >> Dívám se po generickém nástroji, který by mi vrátil pouze N záznamů s >> nejvyšším indexem menším než nějaké X, >> tedy umí něco, co by se mělo v JDBC řešit takto: >> Connection.prepareStatement("select * from tabulka where klic<X order >> by klic desc").setMaxRows(N); >> >> Jenomže toto je na řešeno na straně JDBC driveru, nikoli na straně >> databáze. Když to chci udělat databázovým strojem, >> musím to řešit pro každou DB zvlášť: >> Oracle: select * from tabulka where klic<X and rownum=N order by klic desc >> MySQL: select * from tabulka where klic<X order by klic desc limit 1,N >> >> Znáte takový generický nástroj, popřípadě dokážete poradit, jak >> nastavit Hibernate či iBatis či cokoli jiného, aby mi tuto službu >> poskytlo? >> Já ne a kamarád Gůgl taky nenapověděl. >> >> Dík moc, >> -- >> Oto 'tapik' Buchta, [email protected], http://tapikuv.blogspot.com > > -- Oto 'tapik' Buchta, [email protected], http://tapikuv.blogspot.com
