จะลบฟิลด์ใน QGIS ได้อย่างไร?


15

ตัวเลือกในการลบฟิลด์ในตารางแอตทริบิวต์เปิดใช้งานใน QGIS เมื่อใด ฉันอยู่ในโหมดแก้ไขและยังไม่สามารถลบฟิลด์ ...


คุณต้องการแสดงคอลัมน์เดียวในตารางแอตทริบิวต์หรือไม่ หรือแค่ค้นหาในคอลัมน์นั้นเท่านั้น
นาธาน W

2
ต้องการแสดง coloumn เพียงอันเดียวในตารางแอตทริบิวต์
อรุณ

sql เลือกแถวไม่ใช่คอลัมน์ (ฟิลด์)
neogeomat

@amritkarma u สามารถอธิบายรายละเอียดโปรดฉันสับสนทั้งหมด ........
อรุณ

ความพึงพอใจบอกเราว่าคุณสับสนที่ไหนไม่เช่นนั้นเราจะมีปัญหาในการช่วยเหลือคุณ คุณช่วยอธิบายสิ่งที่คุณหมายถึงโดยซูมในคำถาม
neogeomat

คำตอบ:


6

ปุ่มนั้นใช้ได้สำหรับเลเยอร์ PostGIS เท่านั้น คุณสามารถลบคอลัมน์ตารางผ่านทางปลั๊กอิน "ตัวจัดการตาราง"


6
เป็นเรื่องน่ารำคาญที่จะต้องติดตั้งปลั๊กอินเพื่อลบฟิลด์หรือไม่? ขอบคุณ
vascobnunes

1
นั่นเป็นความจริง แต่นี่เป็นข้อ จำกัด ของโปรแกรมควบคุม OGR ที่ QGIS ใช้สำหรับอ่าน / เขียนข้อมูลเวกเตอร์ เห็นนี้รายงานข้อผิดพลาด: trac.osgeo.org/qgis/ticket/1934 Fortunatley มีการแก้ไขอยู่ในท่อ: trac.osgeo.org/gdal/ticket/2671 :)
maning

คุณยังสามารถเปิดไฟล์ * .dbf ได้โดยตรงเช่น OpenOffice Calc และเปลี่ยนแปลงเพิ่มหรือลบคอลัมน์ข้อมูล เพียงตรวจสอบให้แน่ใจว่าแถวทั้งหมดอยู่ในลำดับเดียวกันกับตอนเริ่มต้นเมื่อคุณบันทึก (เช่นโดยใช้ฟิลด์ FID)
SAnderka

13

เวอร์ชันล่าสุดของ QGIS สนับสนุนการลบฟิลด์ Shapefile จากตารางแอตทริบิวต์

เปิดใช้งานการแก้ไขจากนั้นคุณสามารถแก้ไขตารางแอตทริบิวต์ shapefile และลบคอลัมน์ที่คุณไม่ต้องการได้

ป้อนคำอธิบายรูปภาพที่นี่


6

ใน QGIS 3.0 จะมีปุ่มสำหรับลบคุณสมบัติในเมนูคุณสมบัติ สลับการแก้ไขครั้งแรก (คลิกขวาที่เลเยอร์ -> แก้ไขการสลับ) และไปที่เมนูคุณสมบัติ (คลิกขวา -> คุณสมบัติหรือเพียงดับเบิลคลิก) ไปที่แท็บแหล่งที่มาเลือกแอตทริบิวต์ที่คุณต้องการลบและคลิกที่ปุ่มด้านบนลบฟิลด์


1

ปลั๊กอิน "ตัวจัดการตาราง" ล้าสมัยแล้ว มันมาพร้อมกับคำเตือนว่าจะถูกยกเลิกและแนะนำให้คุณใช้อัลกอริทึมการประมวลผลRefactor Fieldsแทน สิ่งนี้สามารถทำงานได้ อย่างไรก็ตามวิธีอื่นคือการบันทึกเลเยอร์ด้วยชื่อใหม่ยกเลิกการเลือกฟิลด์ที่คุณต้องการส่งออกแล้วลบเวอร์ชันก่อนหน้าซึ่งมีฟิลด์ที่คุณต้องการลบออกหลังจากสร้างเลเยอร์ใหม่บันทึกเป็นภาพหน้าจอไฮไลต์ที่จะยกเลิกการเลือกฟิลด์


0

หลังจากดูไฟล์หลายไฟล์ฉันพบว่าคำจำกัดความบางฟิลด์ - โดยเฉพาะฟิลด์ที่กำหนดผ่านนิพจน์เช่น "$ 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 ก่อนในกรณีที่สิ่งผิดปกติ


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.