2015-01-12 3 views
5

पर SQLite के लिए spatialite एक्सटेंशन का उपयोग करें मुझे पता है कि इससे पहले कुछ समान तरीकों से पूछा गया है। हालांकि, इस पर मिले सभी प्रश्नों को कुछ बहुत ही विशिष्ट सिस्टम सेटअप के साथ निपटाया गया जो मेरे लिए लागू नहीं थे (क्योंकि मेरा है)।विंडोज

सिस्टम:

  • विंडोज 7 64 बिट
  • अजगर 3.4 64 बिट
  • sqlite3 2.6.0
  • Spatialite विंडोज बाइनरी 2.3.1 महत्व के (कुछ और (अजगर के साथ मुझे लगता है कि भेज दिया) ?)

मैं spatialite एक्सटेंशन कोqlite3 के लिए कैसे सक्रिय कर सकता हूं ' मॉड्यूल?

मैं क्या करने की कोशिश की (रास्ता है कि इसी तरह के सवाल में अन्य लोगों का कहना है कि यह काम करता है):

  • https://www.gaia-gis.it/spatialite-2.3.1/binaries.html से डाउनलोड कर रहा है:
    • libspatialite-win-x86-2.3.1.zip
    • proj -win-x86-4.6.1.zip
    • geos-win-x86-3.1.1.zip
    • libiconv-win-x86-1.9.2.zip
  • सी पर एक ही फ़ोल्डर में उन सभी को अनज़िप: \
  • (यह भी केवल उस फ़ोल्डर में DLLs डालने की कोशिश की)
  • अपने सिस्टम पथ चर में उस फ़ोल्डर डाल

फिर,

चल
import sqlite3 

conn = sqlite3.connect(":memory:") 
conn.enable_load_extension(True) 
conn.execute('SELECT load_extension("libspatialite-2.dll")') 

देता

conn.execute("SELECT load_extension('libspatialite-2.dll')") 
sqlite3.OperationalError: The specified module could not be found. 

मैं यह काम करने के लिए और क्या प्रयास कर सकता हूं?

उत्तर

4

आपके पास शायद उस फ़ोल्डर में नहीं है जिसमें libpatialite-2.dll आपके पैथ में रखा गया है। शायद आप अपने पायथन स्क्रिप्ट के भीतर से फ़ोल्डर जोड़ सकते हैं (मुझे कोई पायथन नहीं पता है)। अन्यथा आप इसे विंडोज गुण इंटरफ़ेस से जोड़ सकते हैं।

BTW आप spatialite का एक बहुत ही पुराने संस्करण का उपयोग कर रहे हैं: https://www.gaia-gis.it/fossil/libspatialite/index

+2

spatialite के पुराने संस्करण मुद्दा था: यहां नए संस्करण के लिए एक नजर है! Google ने मुझे विंडोज़ बाइनरीज़ की खोज करते समय [https://www.gaia-gis.it] (https://www.gaia-gis.it) पर पुराने स्थानिक संस्करणों के उपपृष्ठों के साथ भ्रमित कर दिया, इसलिए मैंने सोचा कि अब और नहीं थे हाल के लोग इसके अलावा, लाइब्रेरी/बाइनरी का नाम 'spatialite-2 (/ 3/4) .dll' से 'mod_spatialite.dll' में बदल दिया गया है जिससे मुझे लगता है कि यह कुछ अलग है। [इस डाउनलोड पेज] से 'mod_spatialite-4.2.0-win-amd64.7z' डाउनलोड करना) (http://www.gaia-gis.it/gaia-sins/windows-bin-amd64/) और सभी डीएलएल को ' सी: \ विंडोज \ system32' इस मुद्दे को हल किया। – Dirk

+1

वैसे, [गाया जीआईएस पर यह डाउनलोड पेज] (http://www.gaia-gis.it/gaia-sins/windows-bin-x86/) विंडोज 32 बिट बाइनरी प्रदान करता है। मैं अपने आप को mod_spatialite (विंडोज :-(पर ऐसा नहीं करते हैं) इससे पहले कि मैं अंत में संकलित युग्मक पाया संकलित करने के लिए कोशिश कर रहा द्वारा लगभग एक पूरे के कार्यदिवस खो -_- – Dirk