Jika saya memiliki kelas fitur shapefile atau geodatabase yang memiliki bidang yang ingin saya pesan ulang secara permanen, apakah ada alat, skrip, atau utilitas yang akan membantu saya menyelesaikan tugas ini dengan cepat?
Secara umum saya tahu Anda harus membuat bidang baru, lalu mengisinya dengan nilai-nilai lama, lalu hapus bidang lama. Saya berharap ada sesuatu yang sudah dibuat di luar sana yang akan membantu ini. Dengan asumsi Anda tidak memiliki FME atau alat ETL lain yang tersedia, apa saran terbaik berikutnya?
Ini BUKAN perubahan tingkat tampilan (mis .- seret / letakkan bidang secara berurutan), melainkan tuliskan ke shapefile baru atau kelas feature. Terima kasih.
spatial-etl
field-mapping
Ryan Dalton
sumber
sumber
Jawaban:
Saya cukup yakin Anda bisa melakukan ini dengan Kelas Fitur ke Kelas Fitur dengan memesan kembali bidang di bagian peta bidang alat.Sunting: FC2FC tidak melakukan ini tetapi ... ya untuk menyelamatkan.
Saya baru saja mengkonfirmasi bahwa ogr2ogr dapat melakukan ini. Tentukan urutan nama bidang Anda pada sakelar -select. Misalnya, jika saya memiliki shapefile dengan dua bidang, "Nama" dan "FolderPath" (dalam urutan itu), tetapi saya ingin shapefile baru dengan "FolderPath" pertama saya akan melakukan ini:
sumber
Alat ET GeoWizards akan melakukan ini, dan sepertinya versi gratis akan melakukannya tanpa batasan jumlah fitur.
sumber
Plugin "Table Manager" QGIS sekarang juga memiliki kemampuan untuk melakukan tugas ini dengan mudah tanpa perlu baris perintah.
sumber
Di QGIS Anda sekarang dapat menggunakan toolbox pemrosesan (Ctl + Alt + T) dan pergi ke geoalgoritma QGIS> Alat tabel vektor> Bidang refactor.
Dari sana Anda akan memiliki semua alat untuk mengedit struktur tabel Anda.
sumber
X-Ray menambahkan arcmap memiliki alat untuk menyusun ulang bidang format Geodatabes
sumber
Untuk referensi: MapInfo juga dapat melakukannya di luar kotak. Buka saja DBF dan susun ulang bidang secara permanen. http://www.dbf-editor.com melakukannya juga ($ 40). Editor DBF lain mungkin dapat melakukannya juga.
sumber
Saya memiliki masalah serupa, dan cara tercepat untuk menyusun ulang bidang data secara permanen, jika Anda sudah memiliki QGIS, adalah dengan menggunakan plugin 'Table Manager' seperti yang disarankan sebelumnya.
Mudah untuk menginstal plugin dan mudah digunakan, seperti yang dijelaskan pada halaman di bawah ini:
http://www.qgistutorials.com/en/docs/using_plugins.html
Ini memungkinkan Anda untuk memindahkan atribut dalam urutan tertentu, mengganti nama bidang, menyisipkan bidang baru dan mereplikasi mereka. Ini juga memungkinkan Anda untuk menyimpan file asli, atau mengganti nama dan menyimpannya secara berbeda dari aslinya.
Ini adalah penyelesaian yang cepat dan mudah untuk masalah manajemen tabel atribut saya, dan sangat disarankan, terutama untuk file dengan sejumlah besar atribut yang terkait dengannya.
sumber
Cara terbaik untuk melakukannya adalah dengan menggunakan Pemetaan Lapangan. Saya telah berjuang dengan fitur perangkat lunak ESRI ini selama bertahun-tahun, tetapi saya akhirnya puas dengan solusi ini. Pada dasarnya, Anda bisa membuat salinan Kelas Fitur Anda dengan bidang yang disusun ulang secara permanen menggunakan arcpy.FieldMappings . Semua data dibawa juga. Setelah skrip selesai, cukup ganti Kelas Fitur lama Anda ke myFeatureClass_old, dan yang baru ke myFeatureClass!
Ini skripnya, sangat mudah:
sumber
Kelas Fitur ke Kelas Fitur sekarang dapat melakukan ini dalam 10,5 menggunakan bagian Pemetaan Bidang Alat GP.
sumber
MakeQueryTable akan memungkinkan Anda menentukan urutan bidang Anda untuk tabel atau FC (hanya Geodatabase). Urutan yang Anda tentukan bidang adalah urutan output. Saya menemukan alat ini sulit digunakan. YMMV
Arctoolbox, alat manajemen data, tampilan layer dan tabel, membuat Tabel permintaan
sumber
Ekspor kelas fitur ke yang kosong geodatabase pribadi (seret dan lepas paling cepat), buka .mdb di Access, susun ulang bidang di Design View , simpan, lalu dengan ArcMap / Katalog salin kembali ke bentuk atau file geodatabase.
Metode yang sama berfungsi untuk mengganti nama bidang.
Berhati-hatilah , hanya bekerja pada salinan, mudah untuk mengacaukan semuanya. (Seperti yang dicatat oleh Karey Jack dalam jawaban lain, Esri tidak menyarankan akses .mdb langsung ). Demi keamanan, abaikan semua tabel yang dimulai dengan
GDB_
dan juga tabel yang diakhiri_Shape_Index
.sumber
Coba OGR2OGR. Anda bisa melewati kueri SQL, dan meletakkan bidang dalam urutan yang Anda inginkan.
Baru saja menguji ini, dan itu berfungsi dengan baik!
FYI, Cara termudah untuk menginstal OGR adalah melalui FWTools .
sumber
Buka file .mdb di MS Access dan susun ulang bidang menggunakan seret dan letakkan di 'Design View'
Meskipun ESRI tidak mendukung pengeditan database di tautan Access ESRI
sumber
Saya agak terlambat ke pesta yang satu ini, tapi saya terkejut bahwa tidak ada yang menyebutkan ESRI Geodatabase Diagrammer .
Sumber daya yang disediakan oleh ESRI untuk mengedit struktur XML geodatabase dan file Anda. Sejauh yang saya ketahui, sangat penting jika Anda mengerjakan apa pun di mana desain harus sempurna (proyek jangka panjang). Ini akan membuat Anda tidak perlu membuat ulang file terus menerus setelah melakukan kesalahan sederhana.
sumber