เป็นไปได้ไหมที่จะเปิดฐานข้อมูลส่วนบุคคลของ Esri (* .mdb; ArcGIS 10.2) ใน QGIS 2.6? รุ่นก่อนหน้านี้ถูกต้อง
เป็นไปได้ไหมที่จะเปิดฐานข้อมูลส่วนบุคคลของ Esri (* .mdb; ArcGIS 10.2) ใน QGIS 2.6? รุ่นก่อนหน้านี้ถูกต้อง
คำตอบ:
หากคุณติดตั้ง QGIS รุ่น 64 บิตบน Windows และคุณพบว่าฐานข้อมูลส่วนบุคคลทางภูมิศาสตร์ (* .mdb) ไม่เหมาะกับคุณอีกต่อไปโซลูชันนี้อาจมีผล ฉันใช้ QGIS 2.8.1 มากกว่า 2.6 แต่ฉันคิดว่าปัญหาและวิธีการแก้ปัญหาเหมือนกัน
ปัญหาพื้นฐานเกี่ยวข้องกับข้อผิดพลาดของ GDAL นี้: ปัญหาในการอ่าน MDB (64- บิต)
ขั้นตอนที่ 1
ดาวน์โหลดไดรเวอร์ ODBC รุ่น 64 บิต: Microsoft Access Database Engine 2010 Redistributable
หากคุณไม่มี office รุ่น 32 บิตติดตั้งอยู่คุณก็สามารถเรียกใช้ไฟล์ปฏิบัติการได้ อย่างไรก็ตามหากคุณมีการติดตั้ง office แบบ 32 บิตคุณจะต้องเรียกใช้โปรแกรมปฏิบัติการจากพรอมต์คำสั่งโดยใช้/passive
ตัวเลือก
ขั้นตอนที่ 2
ค้นหาไฟล์ qgis.bat (เป็นC:\OSGeo4W64\bin\qgis.bat
ตัวอย่างของฉัน)
เพิ่มสองบรรทัดต่อไปนี้:
set OGR_SKIP=ODBC
set PGEO_DRIVER_TEMPLATE=DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=%%s
ขั้นตอนที่ 3
เปิด QGIS และลากไฟล์ mdb ไปยังพื้นที่ทำงานของคุณ
Voila!
หากคุณติดตั้ง Microsoft Access Database Engine 64 บิตเรียบร้อยแล้วคุณสามารถ:
วิธีที่ 1 (ทำงานร่วมกับ QGIS 2)
เพิ่มสองบรรทัดต่อไปนี้:
set OGR_SKIP=ODBC
set PGEO_DRIVER_TEMPLATE=DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=%%s
ใน qgis.bat / qgis-grass7.bat / qgis-ltr.bat / qgis-ltr-grass7.bat ก่อนบรรทัดสุดท้ายซึ่งมักจะเป็นสิ่งที่ชอบ
start "QGIS" /B "%OSGEO4W_ROOT%"\bin\qqis...
[โปรดทราบว่ามีเครื่องหมายสองเปอร์เซ็นต์ในค่าของตัวแปร PGEO_DRIVER_TEMPLATE]
วิธีที่ 2 (ทำงานร่วมกับ QGIS 3)
ในแผงการตั้งค่า QGIS -> ตัวเลือก | ระบบ | สภาพแวดล้อมเพิ่มตัวแปรสองตัวต่อไปนี้:
variable name: OGR_SKIP
value: ODBC
variable name: PGEO_DRIVER_TEMPLATE
value: DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=%s
และทำเครื่องหมายในช่อง "ใช้ตัวแปรที่กำหนดเอง"
[โปรดทราบว่าในกรณีนี้มีเครื่องหมายร้อยละหนึ่งเท่านั้นในค่าของตัวแปร PGEO_DRIVER_TEMPLATE]
วิธีที่ 3 (ใช้ได้กับทั้ง QGIS 2 และ QGIS 3)
ในพาเนลตัวแปรสภาพแวดล้อมของการตั้งค่าระบบขั้นสูงของ Windows ให้ตั้งค่าตัวแปรใหม่สองตัวต่อไปนี้เป็นตัวแปรผู้ใช้หรือตัวแปรระบบ:
variable name: OGR_SKIP
value: ODBC
variable name: PGEO_DRIVER_TEMPLATE
value: DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=%s
[โปรดทราบว่าในกรณีนี้จะมีเครื่องหมายหนึ่งเปอร์เซ็นต์เท่านั้นในค่าของตัวแปร PGEO_DRIVER_TEMPLATE]
โซลูชันที่เสนอทำงานได้ดีบน windows 10 เฉพาะข้อเสนอแนะเพิ่มเติมสำหรับการเพิ่มสองบรรทัดไปยังไฟล์ qgis.bat
การตั้งค่าสองบรรทัด ดังนั้นจึงเป็นสิ่งสำคัญที่จะเพิ่มบรรทัดก่อนที่จะเริ่มคำสั่ง
อาจเป็นเรื่องไม่ดี แต่ถ้าคุณไม่ระวังก็อาจเสี่ยงต่อการถูกเข้าใจผิดได้