Mondjuk hasonló a tábla :
CREATE TABLE `rendelo` (
`kod` char(27) NOT NULL default '',
`nev` char(30) NOT NULL default '',
`szulido` date NOT NULL default '0000-00-00',
`tolt` double NOT NULL default '0',
`seged` char(3) NOT NULL default '.F.',
PRIMARY KEY (`kod`),
KEY `tolt` (`tolt`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
Az enyémben több mező és 55000 sor van, a tolt mezőkben valamekkora számok vannak.
Aztán ODBC-n keresztül megy:
SELECT * FROM rendelo WHERE tolt>200 LIMIT 0,500
(itt a legelső eredmény sor, ami véletlenül egyben a tábla legelső sora is, lemarad )
SELECT * FROM rendelo WHERE tolt>200 LIMIT 500,1000
(ez már jó, megvan mind a következő 500 sor...)
Ha az első így megy where nélkül:
SELECT * FROM rendelo LIMIT 500
akkor benne van a kérdéses legelső rekord is és látszik, hogy a tolt mező nagyobb mint 200 egyébként...
Nem az ODBC a hibás , SQLYOG ablakban is ezt a adja, mint ahogy a programban ODBC-n keresztül is...