ฉันโหลดรูปร่างไฟล์ไปยังฐานข้อมูล PostGIS ได้สำเร็จ ฉันต้องการที่จะดึงรูปทรงเรขาคณิตและเลเยอร์ที่เฉพาะเจาะจงเป็นไฟล์ dxf ตามแบบสอบถาม SQL
ฉันใช้ PostGIS, GDAL, PostgreSQL และ Python จากชุด OSGeo4W บน Windows
ฉันคิดว่าฉันควรใช้ ogr2ogr เล็กน้อยเช่นนี้:
$ ogr2ogr -sql "SELECT * FROM some_table" -f "dxf" outputfile.dxf -overwrite "PG:dbname=mydb user=dbusername password=dbpassword"
แต่เมื่อฉันทำเช่นนั้นด้วยค่าที่เหมาะสมฉันได้รับข้อผิดพลาดแบบนี้:
ERROR 1: DXF layer does not support arbitrary field creation, field 'objectid' not created.
ส่งผลให้เกิดข้อผิดพลาดสำหรับทุกคอลัมน์คุณลักษณะในชั้นsome_table
แต่ฉันจะได้รับไฟล์ dxf
หากฉันได้สร้างไฟล์. dxf แล้วและฉันรันคำสั่งด้านบนอีกครั้ง (รวมถึง-overwrite
ตัวเลือก) ฉันได้รับข้อผิดพลาดนี้แทน:
Layer sql_statement not found, and CreateLayer not supported by driver. ERROR 1: Terminating translation prematurely after failed translation from sql statement.
ฉันได้ตรวจสอบแล้วเพื่อให้แน่ใจว่าGDAL_DATA
ตัวแปรสภาพแวดล้อมได้รับการตั้งค่าอย่างถูกต้อง (ถึงC:\OSGeo4W\share\gdal
)
เป็นไปได้อย่างแน่นอนว่าฉันกำลังเข้าใกล้งานนี้อย่างไม่ถูกต้องเพราะฉันใหม่กับเครื่องมือเหล่านี้ดังนั้นฉันจึงเปิดรับข้อเสนอแนะและเคล็ดลับเกี่ยวกับวิธีการสร้างไฟล์. dxf จากข้อมูล GIS ที่จัดเก็บใน PostgreSQL ตามแบบสอบถาม SQL