मैं Python में sqlite3 मॉड्यूल को कैसे जोड़ सकता हूं?


107

क्या कोई मुझे बता सकता है कि पायथन के सबसे हाल के संस्करण के साथ sqlite3 मॉड्यूल कैसे स्थापित किया जाए? मैं एक मैकबुक का उपयोग कर रहा हूं, और कमांड लाइन पर, मैंने कोशिश की:

pip install sqlite

लेकिन एक त्रुटि सामने आती है।


3
यदि आपका अजगर मैन्युअल रूप से स्रोत से बनाया गया है, और इस त्रुटि को पूरा करता है, तो आपको पहले sqlite-devel पैकेज स्थापित करना चाहिए, फिर अजगर को फिर से बनाना चाहिए, जैसा कि @falsetru ने कहा, ऑपरेटिंग सिस्टम के आधार पर पैकेज का नाम अलग-अलग होगा।
ngn999

स्रोत से अजगर बनाने की कोशिश करने वाले और इस त्रुटि में भाग लेने के लिए: यह वास्तव में अच्छा जवाब है, इस बात की पुष्टि करता है कि आपकी जरूरत और निर्भरता की जरूरत है। stackoverflow.com/a/6171511/6273503
हार्पर

जवाबों:


187

आपको sqlite3मॉड्यूल स्थापित करने की आवश्यकता नहीं है । यह मानक पुस्तकालय (पायथन 2.5 के बाद से) में शामिल है।


4
मेरे पास वास्तव में एक अजगर 2.5.4 है, जिसमें sqlite3 शामिल नहीं है :(
shevy

@ user722915, पायथन 2.5 में व्हाट्स न्यू के अनुसार, SQLite एम्बेडेड डेटाबेस के लिए एक रैपर, pysqlite मॉड्यूल ( pysqlite.org ), पैकेज लाइब्रेरी sql3 के तहत मानक पुस्तकालय में जोड़ा गया है।
falsetru

10
यदि आपका python3 मैन्युअल रूप से स्रोत से बनाया गया है, और इस त्रुटि को पूरा करता है, तो आपको पहले sqlite-devel पैकेज स्थापित करना चाहिए, फिर python3 का पुनर्निर्माण करना चाहिए।
ngn999

@ ngn999, ओपी को यह बताने के लिए आप प्रश्न के लिए बेहतर टिप्पणी करेंगे। क्योंकि यह बहुत लंबे समय से उत्तर दिया गया था, और यदि आप उत्तर पर टिप्पणी करते हैं, तो यह ओपी को सूचित नहीं किया जाता है।
falsetru

3
@ ngn999, BTW, पैकेज का नाम ऑपरेटिंग सिस्टम के आधार पर अलग-अलग होगा। उदाहरण के लिए, उबंटू में, यह libsqlite3-dev
falsetru

44

मेरे पास २..3.३ है और इससे मेरी समस्या हल हो गई:

pip install pysqlite

10
विचार करें कि इससे न लागू पायथन 3. करने के लिए है
Phyticist

40

पायथन संस्करण 3 के लिए:

pip install pysqlite3 

15

आम तौर पर, यह शामिल है। हालांकि, जैसा कि @ ngn999 ने कहा, यदि आपका अजगर मैन्युअल रूप से स्रोत से बनाया गया है, तो आपको इसे जोड़ना होगा।

यहाँ एक स्क्रिप्ट का एक उदाहरण है कि इच्छा सेटअप समझाया python3 के संस्करण (आभासी वातावरण) एक के साथ अपने उपयोगकर्ता निर्देशिका में sqlite3 की समझाया संस्करण

INSTALL_BASE_PATH="$HOME/local"
cd ~
mkdir build
cd build
[ -f Python-3.6.2.tgz ] || wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz
tar -zxvf Python-3.6.2.tgz

[ -f sqlite-autoconf-3240000.tar.gz ] || wget https://www.sqlite.org/2018/sqlite-autoconf-3240000.tar.gz
tar -zxvf sqlite-autoconf-3240000.tar.gz

cd sqlite-autoconf-3240000
./configure --prefix=${INSTALL_BASE_PATH}
make
make install

cd ../Python-3.6.2
LD_RUN_PATH=${INSTALL_BASE_PATH}/lib configure
LDFLAGS="-L ${INSTALL_BASE_PATH}/lib"
CPPFLAGS="-I ${INSTALL_BASE_PATH}/include"
LD_RUN_PATH=${INSTALL_BASE_PATH}/lib make
./configure --prefix=${INSTALL_BASE_PATH}
make
make install

cd ~
LINE_TO_ADD="export PATH=${INSTALL_BASE_PATH}/bin:\$PATH"
if grep -q -v "${LINE_TO_ADD}" $HOME/.bash_profile; then echo "${LINE_TO_ADD}" >> $HOME/.bash_profile; fi
source $HOME/.bash_profile

यह क्यों? आप एक मॉड्यूलर अजगर पर्यावरण चाहते हैं जिसे आप अपने ऑपरेटिंग सिस्टम को प्रभावित किए बिना पूरी तरह से नष्ट कर सकते हैं और पुनर्निर्माण कर सकते हैं - एक स्वतंत्र विकास पर्यावरण के लिए। इस मामले में, समाधान sqlite3 को मॉड्यूलर रूप से भी स्थापित करना है।


1
यदि आप अपने पायथन संस्करणों को प्रबंधित करने के लिए पाइनेव का उपयोग करते हैं तो भी हो सकता है, लेकिन पायथन दुभाषिया स्थापित होने पर आपके पास सभी सिस्टम पैकेज स्थापित नहीं थे।
मार्कएनएस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.