Zdar, v Hibernate pomocí criterií
Criteria criteria; .. criteria.setMaxResults(100); criteria.setFirstResult(0); Provoz nad Oracle ok. Jara Oto Buchta <[email protected]> Odeslal: [email protected] 11.03.2010 13:25 Odpovězte prosím uživateli Java Komu: Java <[email protected]> Kopie: Předmět: Obdoba PreparedStatement.setMaxRows() na straně databáze 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
