identity di mssql ti dà campi univoci in sequenza con i "buchi" dovuti alle cancellazioni esattamente come fa il contatore di access. ripeto, probabilmente leggi i record NON in ordine di id.