Bagaimana cara menghapus bidang dalam QGIS?

14

Kapan opsi untuk menghapus bidang dalam tabel atribut diaktifkan di QGIS? Saya dalam mode pengeditan dan masih tidak dapat menghapus bidang ...

vascobnunes
sumber
Jadi, Anda hanya ingin menampilkan satu kolom di tabel atribut? atau hanya mencari di kolom itu saja?
Nathan W
2
hanya ingin menampilkan satu kolom dalam tabel atribut
Arun
sql pilih baris bukan kolom (bidang)
neogeomat
@amritkarma dapat Anda jelaskan, saya benar-benar bingung ........
Arun
Senang memberi tahu kami di mana Anda bingung, jika tidak, kami akan kesulitan membantu Anda. Bisakah Anda menjelaskan apa yang Anda maksudkan dengan memperbesar pertanyaan?
neogeomat

Jawaban:

6

Tombol itu hanya tersedia untuk layer PostGIS. Anda dapat menghapus kolom tabel melalui plugin "table manager".

artwork21
sumber
6
Bukankah itu agak menjengkelkan untuk menginstal plugin untuk menghapus kolom? terima kasih
vascobnunes
1
Itu benar, tetapi ini lebih merupakan batasan driver OGR yang digunakan QGIS untuk data vektor baca / tulis. Lihat laporan bug ini: trac.osgeo.org/qgis/ticket/1934 . Fortunatley perbaikan ada dalam pipa: trac.osgeo.org/gdal/ticket/2671 :)
maning
Anda juga dapat selalu membuka file * .dbf secara langsung di, misalnya, OpenOffice Calc dan mengubah, menambah, atau menghapus kolom data. Pastikan semua baris berada dalam urutan yang sama seperti di awal ketika Anda menyimpan (misalnya dengan menggunakan bidang FID).
SAnderka
12

Versi terbaru dari dukungan QGIS menghapus bidang Shapefile dari tabel atribut.

Aktifkan pengeditan dan kemudian Anda dapat mengedit tabel atribut shapefile dan menghapus banyak kolom yang tidak Anda butuhkan.

masukkan deskripsi gambar di sini

campuran bredie
sumber
6

Di QGIS 3.0 ada juga tombol untuk menghapus atribut di menu properti. Pertama, beralih pengeditan (klik kanan pada layer -> pengalih pengeditan) dan pergi ke menu properti (klik kanan -> properti atau cukup klik dua kali). Buka tab bidang isian, pilih atribut yang ingin Anda hapus dan klik tombol di atas.Hapus bidang

PySjoerd
sumber
1

Plugin "Table Manager" sudah usang. Itu datang dengan peringatan bahwa itu dihentikan dan menyarankan agar Anda menggunakan algoritma pemrosesan Bidang Refactor sebagai gantinya. Ini bisa berhasil. Namun, metode lain adalah menyimpan layer dengan nama baru, batalkan pilihan bidang yang ingin Anda ekspor, dan kemudian hapus versi sebelumnya yang memiliki bidang yang ingin Anda hapus setelah lapisan baru dibuat.Simpan Sebagai Cuplikan Layar menyorot ke mana Batalkan Pilihan Bidang

Mark Thompson
sumber
0

Setelah melihat-lihat banyak file saya menemukan bahwa beberapa definisi bidang - terutama bidang yang didefinisikan melalui ekspresi seperti "$ length" - tampaknya hanya disimpan dalam file * .qgs, yang (setidaknya untuk QGIS 2.18.13) adalah file XML, yang berarti file teks yang dapat diedit menggunakan editor teks sederhana. Nama layer QGIS disimpan di elemen <layername> ... </layername>. Cari lapisan yang menarik. Bidang ekspresi tercantum dalam elemen <expressionfields> ... </expressionfields>. Sebagai contoh

<expressionfields>
  <field typeName="FLOAT" precision="0" expression="$length/1000" length="0" type="6" comment="" name="km"/>
</expressionfields>

untuk bidang bernama "km" yang nilainya dihitung sebagai $ panjang / 1000. Hapus elemen <field> ... </field> yang tidak Anda inginkan lagi (ketika file * .qgs tidak digunakan). Pastikan untuk membuat salinan file * .qgs terlebih dahulu, jika terjadi kesalahan.

Louis Strous
sumber
-1

Anda harus melihat ke dalam plugin RT SQL Layer atau plugin Fast SQL untuk QGIS.

Konsol SQL di QGIS

neogeomat
sumber