¿Cuándo se habilita la opción para eliminar el campo en una tabla de atributos en QGIS? Estoy en modo de edición y todavía no puedo eliminar un campo ...
¿Cuándo se habilita la opción para eliminar el campo en una tabla de atributos en QGIS? Estoy en modo de edición y todavía no puedo eliminar un campo ...
Respuestas:
Ese botón solo está disponible para una capa PostGIS. Puede eliminar columnas de tabla a través del complemento "administrador de tabla".
Las versiones recientes de QGIS admiten la eliminación de campos Shapefile de la tabla de atributos.
Habilite la edición y luego puede editar la tabla de atributos de shapefile y eliminar varias columnas que no necesita.
En QGIS 3.0 también hay un botón para eliminar atributos en el menú de propiedades. Primero cambie la edición (haga clic derecho en una capa -> cambie la edición) y vaya al menú de propiedades (haga clic derecho -> propiedades o simplemente haga doble clic). Vaya a la pestaña de campos de origen, seleccione los atributos que desea eliminar y haga clic en el botón en la parte superior.
El complemento "Table Manager" está obsoleto. Viene con una advertencia de que se descontinuó y sugiere que utilice el algoritmo de procesamiento de campos de refactorización . Esto puede funcionar Sin embargo, otro método es guardar la capa con un nuevo nombre, deseleccionar los campos que desea exportar y luego eliminar la versión anterior que tiene los campos que desea eliminar después de crear la nueva capa.
Después de mirar muchos archivos, descubrí que algunas definiciones de campo, especialmente los campos definidos a través de una expresión como "$ length", parecen estar almacenados solo en el archivo * .qgs, que (al menos para QGIS 2.18.13) es un archivo XML, lo que significa que es un archivo de texto que se puede editar usando editores de texto simples. El nombre de la capa QGIS se almacena en el elemento <layername> ... </layername>. Busca la capa de interés. Los campos de expresión se enumeran en el elemento <expressionfields> ... </expressionfields>. Por ejemplo
<expressionfields>
<field typeName="FLOAT" precision="0" expression="$length/1000" length="0" type="6" comment="" name="km"/>
</expressionfields>
para un campo llamado "km" cuyo valor se calcula como $ length / 1000. Elimine el elemento <field> ... </field> que ya no desea (cuando el archivo * .qgs no está en uso). Asegúrese de hacer una copia del archivo * .qgs primero, en caso de que las cosas salgan mal.
Debe buscar el complemento RT SQL Layer o el complemento Fast SQL para QGIS.