MongoDB へのデータの書込み (write)
Overview
このページでは、PyMongo を使用して MongoDB にデータを書込む一般的な方法を示すコピー可能なコード例があります。
Tip
このページに記載されているメソッドの詳細については、各セクションに提供されているリンクを参照してください。
このページの例を使用するには、コード例をサンプル アプリケーションまたは独自のアプリケーションにコピーします。 <connection string URI>
など、コード例にあるすべてのプレースホルダーを、MongoDB 配置に関連する値に置き換えてください。
サンプル アプリケーション
次のサンプルアプリケーションを使用して、このページのコード例をテストできます。 サンプル アプリケーションを使用するには、次の手順を実行します。
PyMongo がインストールされていることを確認します。
次のコードをコピーし、新しい
.py
ファイルに貼り付けます。このページからコード例をコピーし、 ファイル内の指定された行に貼り付けます。
1 import pymongo 2 from pymongo import MongoClient 3 4 try: 5 uri = "<connection string URI>" 6 client = MongoClient(uri) 7 8 database = client["<database name>"] 9 collection = database["<collection name>"] 10 11 # start example code here 12 13 # end example code here 14 15 client.close() 16 17 except Exception as e: 18 raise Exception( 19 "The following error occurred: ", e)
1 つを挿入
result = collection.insert_one({ "<field name>" : "<value>" }) print(result.acknowledged)
insert_one()
メソッドの詳細については、 のドキュメントの挿入ガイドを参照してください。
複数挿入
document_list = [ { "<field name>" : "<value>" }, { "<field name>" : "<value>" } ] result = collection.insert_many(document_list) print(result.acknowledged)
insert_many()
メソッドについて詳しくは、ドキュメントの挿入ガイドをご覧ください。
更新 1
query_filter = { "<field to match>" : "<value to match>" } update_operation = { "$set" : { "<field name>" : "<value>" } } result = collection.update_one(query_filter, update_operation) print(result.modified_count)
update_one()
メソッドについて詳しくは、ドキュメントの更新ガイドを参照してください。
複数更新
query_filter = { "<field to match>" : "<value to match>" } update_operation = { "$set" : { "<field name>" : "<value>" } } result = collection.update_many(query_filter, update_operation) print(result.modified_count)
update_many()
メソッドについて詳しくは、ドキュメントの更新ガイドを参照してください。
replaceOne
query_filter = { "<field to match>" : "<value to match>" } replace_document = { "<new document field name>" : "<new document value>" } result = collection.replace_one(query_filter, replace_document) print(result.modified_count)
replace_one()
メソッドの詳細については、ドキュメントの置換のガイドを参照してください。
deleteOne
query_filter = { "<field to match>" : "<value to match>" } result = collection.delete_one(query_filter) print(result.deleted_count)
delete_one()
メソッドの詳細については、ドキュメントの削除のガイドを参照してください。
複数削除
query_filter = { "<field to match>" : "<value to match>" } result = collection.delete_many(query_filter) print(result.deleted_count)
delete_many()
メソッドの詳細については、ドキュメントの削除のガイドを参照してください。
一括書き込み (write)
operations = [ pymongo.InsertOne( { "<field name>" : "<value>" } ), pymongo.UpdateMany( { "<field to match>" : "<value to match>" }, { "$set" : { "<field name>" : "<value>" }}, ), pymongo.DeleteOne( { "<field to match>" : "<value to match>" } ), ] result = collection.bulk_write(operations) print(result)
bulk_write()
メソッドの詳細については、一括書込みのガイドを参照してください。