MongoDBはNoSQLのひとつで、JSON形式でデータが格納される。このMongoDBをRaspberry PiとPython3で使ってみる。MongoDBの最新は3系だが、64ビットバージョンしか存在しない。32ビットのRaspbianでは使えないので、ここはおとなしくapt-getコマンドでインストールされる32ビットの2系を使う。
Raspbian StretchとPython3.5.3。
MongoDBは、バージョンは古いがapt-getコマンドでインストールできる。
バージョンは2.4.14。
MongoDBの起動
シェルの起動
データベース一覧の表示(testがデフォルトのデータベース)
データベース情報を確認
コレクション(RDBのテーブルに相当)の作成
コレクション一覧の確認
シェルの終了
Python3でMongoDBを操作できるようにPythonパッケージのPyMongoをインストールする。pipでインストールできるが、インストールされるバージョンは3.6。このバージョンだとインサート時にエラーになるので、古いバージョンをインストールする。
試しにPyMongoでPython3からインサートしてみる。以下のコードをPython3で実行する。
MongoDBシェルでsampleコレクションを確認すると、データがインサートされている。idはインサート時に自動で付加される。
環境
Raspbian StretchとPython3.5.3。
MongoDBのインストール
MongoDBは、バージョンは古いがapt-getコマンドでインストールできる。
バージョンは2.4.14。
MongoDBの操作
MongoDBの起動
シェルの起動
データベース一覧の表示(testがデフォルトのデータベース)
データベース情報を確認
コレクション(RDBのテーブルに相当)の作成
コレクション一覧の確認
シェルの終了
Python用パッケージのインストール
Python3でMongoDBを操作できるようにPythonパッケージのPyMongoをインストールする。pipでインストールできるが、インストールされるバージョンは3.6。このバージョンだとインサート時にエラーになるので、古いバージョンをインストールする。
Python3からのインサート
試しにPyMongoでPython3からインサートしてみる。以下のコードをPython3で実行する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | from pymongo import MongoClient # localhostの27017ポート(デフォルト)に接続 client = MongoClient( 'localhost' , 27017 ) # testデータベース db = client.test # testデータベースのsampleコレクション col = db.sample # インサートするデータ(JSON) data = { "A" : 1 , "B" : 999 , "animal" : [ "dog" , "cat" ] } # sampleコレクションにインサート col.insert(data) |
MongoDBシェルでsampleコレクションを確認すると、データがインサートされている。idはインサート時に自動で付加される。
0 件のコメント:
コメントを投稿