mikemoke blog

データ解析やってます。統計・機械学習・画像解析など。

pydevでsqlite3を使う(error:Undefined variable from import: connect)

eclipseでsqlite3を使う際に躓いたのでメモ。

 

sqlite3はsqlitePythonから使うための標準ライブラリです。

Pythonのsqlite3ライブラリでデータベースを操作しよう — msrsblog

 

[問題]

eclipseのpydevで、sqlite3をimportし、データベースに接続しようとしたところ

”Undefined variable from import: connect”

とエラーがでます。

 

[解決策]

解決策が以下リンクに。

sqlite3.connect() not working in python 3.3 - Stack Overflow

For users to discuss the Eclipse Pydev plug-in ()

 

pydevがsqlite3のライブラリを読み込めていないことが原因のようで、解決策として

①pydevを使わない

②sqlite3のライブラリにリンクする

pydevで引き続き実装したいので、②でいきます。

 

リンク先に以下のコマンドが記載されています。

cd /usr/lib/python2.7/lib-dynload/ 
sudo ln -s _sqlite3.x86_64-linux-gnu.so _sqlite3.so

”_sqlite3.x86_64-linux-gpu.so”を"_sqlite3.so"としてリンクを貼ることでpydevが認識できるみたいです。

ちなみにlnコマンドの意味は→Linuxキーワード - シンボリック・リンク:ITpro

リンクを貼った後、eclipseのwindow>preferences>pydev>interpreters>python interpreterでライブラリを再読み込みすると、pydevがsqlite3を認識するようになりました。

 

おしまい