Si tengo un archivo de formas o una clase de entidad de geodatabase que tiene campos que quiero reordenar permanentemente, ¿hay alguna herramienta, script o utilidad que me ayude a realizar esta tarea rápidamente?
En general, sé que debe crear un nuevo campo, luego completarlo con los valores anteriores y luego eliminar el campo anterior. Espero que ya haya algo creado que ayude con esto. Suponiendo que no tiene FME u otra herramienta ETL disponible, ¿cuál es la siguiente mejor sugerencia?
Esto NO es un cambio de nivel de vista (es decir, arrastrar / soltar los campos en orden), sino escribir en un nuevo shapefile o featureclass. Gracias.
spatial-etl
field-mapping
RyanDalton
fuente
fuente
Respuestas:
Estoy bastante seguro de que puede hacer esto con Clase de entidad a Clase de entidad al reordenar los campos en la sección del mapa de campo de la herramienta.Editar: FC2FC no hace esto pero ... ogr al rescate.
Acabo de confirmar que ogr2ogr puede hacer esto. Especifique su orden de nombre de campo en el interruptor -select. Por ejemplo, si tengo un shapefile con dos campos, "Nombre" y "FolderPath" (en ese orden), pero primero quiero un nuevo shapefile con "FolderPath", haría esto:
fuente
La herramienta ET GeoWizards lo hará, y parece que la versión gratuita lo hará sin ninguna limitación en la cantidad de funciones.
fuente
El complemento QGIS "Table Manager" ahora también tiene la capacidad de realizar esta tarea fácilmente sin necesidad de línea de comando.
fuente
En QGIS ahora puede usar la caja de herramientas de procesamiento (Ctl + Alt + T) e ir a geoalgoritmos de QGIS> Herramientas de tabla de vectores> Campos de refactorización.
A partir de ahí, tendrá todas las herramientas para editar la estructura de su tabla.
fuente
X-Ray arcmap add in tiene una herramienta para reordenar campos de formato Geodatabes
fuente
Para la referencia: MapInfo también puede hacerlo fuera de la caja. Simplemente abra el DBF y reordene los campos permanentemente. http://www.dbf-editor.com también lo hace ($ 40). Otros editores de DBF probablemente también puedan hacerlo.
fuente
He tenido un problema similar, y la forma más rápida de reordenar permanentemente los campos de datos, si ya tiene QGIS, es usar el complemento 'Table Manager' como se sugirió anteriormente.
Es sencillo instalar complementos y es fácil de usar, como se describe en la página a continuación:
http://www.qgistutorials.com/en/docs/using_plugins.html
Le permite mover los atributos en un orden específico, cambiar el nombre de los campos, insertar cualquier campo nuevo y replicarlos. También le permite guardar el archivo original o cambiarle el nombre y guardarlo de manera diferente al original.
Esta fue una solución rápida y conveniente para mi problema de administración de la tabla de atributos, y es muy recomendable, especialmente para archivos con una gran cantidad de atributos asociados.
fuente
Exporte las clases de entidad a una geodatabase personal vacía (arrastrar y soltar es lo más rápido), abra el .mdb en Access, vuelva a ordenar los campos en la Vista de diseño , guárdelo y luego con ArcMap / Catálogo copie de nuevo a la geodatabase de formas o archivos.
El mismo método funciona para renombrar campos.
Sin embargo , tenga cuidado , solo trabaje en copias, es fácil arruinar todo. (Como Karey Jack señala en otra respuesta, Esri desalienta el acceso directo .mdb ). Por seguridad, ignore todas las tablas que comienzan con
GDB_
y también las que terminan con_Shape_Index
.fuente
La mejor manera de hacerlo es usar asignaciones de campo. He estado luchando con esta característica del software ESRI durante años, pero finalmente estoy contento con esta solución. Básicamente, puede hacer una copia de su Clase de entidad con los campos reordenados permanentemente usando arcpy.FieldMappings . Todos los datos se transfieren también. Una vez que se haya completado el script, simplemente cambie el nombre de su antigua Clase de entidad a myFeatureClass_old, ¡y la nueva a myFeatureClass!
Aquí está el guión, es súper sencillo:
fuente
La clase de entidad a clase de entidad ahora puede realizar esto en 10.5 usando la sección de mapeo de campo de la herramienta GP.
fuente
MakeQueryTable le permitirá definir el orden de sus campos para una tabla o FC (solo Geodatabase). El orden en que especifica los campos es el orden de la salida. Encuentro esta herramienta difícil de usar. YMMV
Arctoolbox, herramientas de gestión de datos, capas y vistas de tabla, consulta Tabla
fuente
Prueba OGR2OGR. Puede pasar una consulta SQL y colocar los campos en el orden que desee.
¡Acabo de probar esto y funciona bien!
Para su información, la forma más fácil de instalar OGR es a través de FWTools .
fuente
Abra el archivo .mdb en MS Access y reordene los campos usando arrastrar y soltar en 'Vista de diseño'
Aunque ESRI desaconseja editar una base de datos en Access ESRI link
fuente
Llego un poco tarde a la fiesta en este caso, pero me sorprende que nadie haya mencionado el Diagramador de geodatabase ESRI .
Un recurso proporcionado por ESRI para editar la estructura XML de su geodatabase y archivos. En lo que a mí respecta, es esencial si está trabajando en algo donde el diseño tiene que ser perfecto (proyecto a largo plazo). Le evitará tener que volver a crear archivos continuamente después de cometer un simple error.
fuente