Here's a list of bad things that are related to shapefiles
- There is a 2 GB size limit for any shapefile component file, which translates to a maximum of roughly 70 million point features.
- Shapefiles do not contain an XY tolerance.
- A shapefile may take up three to five times as much space as a file geodatabase or SDE because of shape compression methods.
- Field names cannot be longer than 10 characters.
- The maximum number of fields is 255
- dBase files do not support type blob, guid, global ID, coordinate ID, or raster field types.
- dBase files have little SQL support aside from a WHERE clause.
- Circular arc curves are not supported on shapefiles.
- Shapefiles do not have a spatial domain, which defines the geographic extent that all coordinates must fall within.
- Cannot change Spatial Domain, must create another shapefile.
Unsupported Capabilities
- Subtypes
- Attribute domains
- Geometric networks
- Topologies
- Annotation
The dBase file standard only supports ANSI characters in their field names and values. ESRI has added extensive Unicode support for dBase files to allow you to store Unicode field names and values. But this additional support resides only in ArcGIS and not in non-ESRI applications. Supporting Unicode in dBase is an on-going effort at ESRI, meaning that issues continue to be found and resolved.