Apakah ada cara untuk me-refresh tabel atribut layer setelah mengedit tabel (misalnya menambahkan kolom) di DB-Manager?
Apakah ada cara untuk me-refresh tabel atribut layer setelah mengedit tabel (misalnya menambahkan kolom) di DB-Manager?
Jawaban:
Pendek dan manis:
Change vector datasource
.OK
tanpa mengubah salah satu pengaturan.Pada dasarnya, Anda "mengubah" sumber data vektor ke apa yang sudah ada sebelumnya, tetapi ini memaksa QGIS untuk memuat ulang definisi layer.
Diuji dalam QGIS 2.14 pada Linux Mint 17.2.
Dengan asumsi bahwa Anda bekerja dengan database PostGIS, Anda dapat memperbarui statistik tabel minat dengan menggunakan ANALYSE
fungsi:
http://www.postgresql.org/docs/current/static/sql-analyze.html
Dalam kasus Anda, Anda dapat menjalankan pernyataan di dalam DB-manager dengan menekan tombol yang ditandai pada gambar terlampir dan mengeksekusi ANALYSE
pernyataan di jendela, yang juga ditandai. Kueri akan menjadi ANALYSE yourschema.yourtable
. Perintah analisis harus memperbarui tabel Anda, sehingga ketika Anda mengakses kembali informasi itu harus mencerminkan perubahan yang telah Anda buat.
Apakah saya mengerti dengan baik jika Anda bermaksud me-refresh tabel di QGIS setelah perubahan pada kolom dibuat?
Sejauh yang saya tahu, hanya menutup dan membuka proyek atau menambahkan kembali tabel akan membuat ini terjadi. Selama Anda menyimpan gaya default di database yang mungkin merupakan cara tercepat.
Ketika kolom ditambahkan dengan Kalkulator Bidang, perubahannya langsung terlihat tetapi manajer DB menawarkan lebih banyak kontrol dalam menentukan jenis bidang jadi saya mengerti mengapa itu mungkin bukan solusi.
layer.dataProvider().forceReload()
harus melakukan triknya