Attribute table not displaying all records...

10347
13
03-28-2017 03:09 AM
TheoFaull
Occasional Contributor III

I'm in ArcMap, viewing the attribute table for a point feature class...

'0 out of *2000 Selected'... Why has it put this limit on the attribute table? There should be 25,000 ish records.

On the map itself, 25,000 points do display/draw however.

I do have a definition query but this should exclude around about 500 records only..

This issue only occurs with File Geodatabase feature classes. Sourced to a shapefile copy of the dataset, this issue doesn't happen.

What's going on? Lot's of questions I've had recently!

ArcGIS Desktop 10.4

Tags (1)
13 Replies
JoshuaBixby
MVP Esteemed Contributor

I hadn't really paid attention before, but what you describes makes sense with what I describe above.  As someone mentioned earlier, it is an optimization step, i.e., not retrieving all of the records at one time.  With file geodatabases without a query definition, it lets you know the total record count, but it still doesn't retrieve all the rows of the table.

What if a table had millions of records?  Some do these days.  Would you want the software to retrieve all of those records when a table was opened for viewing?  So, maybe retrieving all of the records isn't good, but what about more than 2000?  That starts the discussion of what is the magic number; 2000, 10000, 50000?  The decision to retrieve 2000 records was probably made back in the 8.x days when computers didn't have nearly the storage and performance they do today.  Since we don't see the 2000 record issue in Pro, Esri has likely increased that number.  What is the new magic number?  I don't know.

If you run field calculator, it will calculate on all the records, not just the first 2000 or however many.  If you start an edit session, you will see that you can scroll to the bottom of all the records.  When opening a table to view rows, it appears to only retrieve 2000 or so at a time for file and personal geodatabases.

I think the software is working as designed, I think you just disagree with how it is designed.  There are plenty of aspects of ArcGIS software where I disagree with how Esri has implemented something.  Is a failure of design a bug like a failure in function/operation?  It is arguable, but the final decision is typically made by the people making the software.

TheoFaull
Occasional Contributor III

All very good points. I can see why they've limited the amount of records. I didn't comprehend that some GDBs could have millions of records!

However, and back to a previous point I made, I still find it a bit strange how to search (find) function will only search the 2000, rather than the whole dataset.

0 Kudos
JoshuaBixby
MVP Esteemed Contributor

I see what you are saying about the find functionality.  Most people like to interact with database tables the same way they do spreadsheets.  Although the experience can be made similar, there are fundamental differences between a database table and spreadsheet, and it can be difficult for software makers to make the experience identical.  That said, it might be worth submitting an enhancement or ArcGIS Idea to have the find functionality retrieve all the records to they can be searched.

RichardFairhurst
MVP Honored Contributor

if scrolling through the table records is the issue, in addition to the two workarounds mentioned in May 28, 2017 post, you can type a record number in the record number text box that is higher than 2048, like 2050, to move to past the record scrolling sticking point.    After that the record set counter may say there are only *4000 records in the table, but the down arrow or scroll bar will scroll the records beyond the 4096th record and adjust the record counter display to the next set of 2000 records until the last record is reached.  However, the original workarounds are necessary if the objective is to use the Find functionality on the full record set.