Когда опция удаления поля в таблице атрибутов включена в QGIS? Я в режиме редактирования и все еще не могу удалить поле ...
Когда опция удаления поля в таблице атрибутов включена в QGIS? Я в режиме редактирования и все еще не могу удалить поле ...
Ответы:
Эта кнопка доступна только для слоя PostGIS. Вы можете удалить столбцы таблицы с помощью плагина "Диспетчер таблиц".
Последние версии QGIS поддерживают удаление полей Shapefile из таблицы атрибутов.
Включите редактирование, после чего вы сможете редактировать таблицу атрибутов шейп-файла и многократно удалять ненужные столбцы.

В QGIS 3.0 также есть кнопка для удаления атрибутов в меню свойств. Сначала переключите редактирование (щелкните правой кнопкой мыши на слое -> переключить редактирование) и перейдите в меню свойств (щелкните правой кнопкой мыши -> свойства или просто дважды щелкните). Перейдите на вкладку исходных полей, выберите атрибуты, которые вы хотите удалить, и нажмите кнопку сверху.
Плагин «Диспетчер таблиц» устарел. Он поставляется с предупреждением о том, что оно прекращено, и предлагает вместо этого использовать алгоритм обработки полей Refactor . Это может сработать. Однако другой способ - сохранить слой с новым именем, отменить выбор полей, которые вы хотите экспортировать, а затем удалить предыдущую версию, в которой поля, которые вы хотели удалить, были удалены после создания нового слоя.
Посмотрев много файлов, я обнаружил, что некоторые определения полей, особенно поля, определенные с помощью выражения, такого как "$ length", похоже, хранятся только в файле * .qgs, который (по крайней мере для QGIS 2.18.13) XML-файл, что означает, что это текстовый файл, который можно редактировать с помощью простых текстовых редакторов. Имя слоя QGIS хранится в элементе <layername> ... </ layername>. Ищите слой интереса. Поля выражений перечислены в элементе <expressionfields> ... </ expressionfields>. Например
<expressionfields>
<field typeName="FLOAT" precision="0" expression="$length/1000" length="0" type="6" comment="" name="km"/>
</expressionfields>
для поля с именем "km", значение которого рассчитывается как $ length / 1000. Удалите элемент <field> ... </ field>, который вам больше не нужен (когда файл * .qgs не используется). Обязательно сначала сделайте копию файла * .qgs, если что-то пойдет не так.
Вы должны посмотреть на плагин RT SQL Layer или плагин Fast SQL для QGIS.