En mi trabajo heredé varios shapefiles que se originan en MapInfo que estoy trayendo a un nuevo proyecto en QGIS. Tengo la oportunidad de cambiar los nombres de las columnas, sumar y restar columnas y, dado que todavía no hay demasiados datos, puedo comenzar de nuevo y ajustar las longitudes de los campos también.
Me doy cuenta de que algunas de las longitudes de campo son mucho más grandes de lo necesario y recuerdo de la creación de la base de datos anterior hace 20 años, más o menos, que es mejor mantener las longitudes de campo para que no sean más largas de lo necesario. Ahorre espacio para mejorar la eficiencia.
¿Sigue siendo deseable o ya no importa la longitud del campo?
qgis
fields-attributes
length
Martin Hügi
fuente
fuente
Respuestas:
La respuesta depende del formato de datos. Los archivos dBase-III +, que se usan en los archivos de forma de los atributos, tienen un ancho fijo, por lo que definir una columna FIPS para que tenga un ancho de texto de 254 usa 254 bytes. Peor aún, dBase tiene un ancho de registro máximo de 4000 bytes, por lo que los 249 desperdiciados en un campo de cinco caracteres no están disponibles para otros campos (de los cuales hay un máximo de 100 o 255, dependiendo de quién implemente el estándar). Los límites también se aplican al tamaño total del archivo dBase (2 Gb), al que se podría llegar con un registro de 536k con un ancho máximo, cuando los registros de 5.36m estarían disponibles con un ancho de 400 bytes.
Hay otra razón para limitar el ancho del campo: la calidad de los datos. Si un designador solo puede contener legalmente dos caracteres, pero lo define con diez, entonces aumenta la posibilidad de que el archivo de datos acepte un valor inválido con dedos gordos.
Por otro lado, si proporciona solo el ancho necesario y obtiene datos internacionales en formato UTF-8, es posible que tenga poco espacio cuando un personaje puede usar 2-6 bytes.
Por lo tanto, para los campos de cadena de la base de datos (que incluye la geodatabase de archivos), que generalmente se terminan y, por lo tanto, no desperdician espacio en las filas, la flexibilidad es una opción, pero para los formatos de ancho fijo, las reglas antiguas aún se aplican.
fuente