MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

MongoDBのsave()メソッドで変数の値を設定・保存する方法

MongoDBでsave()メソッドを使って変数の値を設定・保存するには、db.コレクション名.save(変数名)という形式を使用します。「変数名」の部分には、あらかじめ定義しておいた任意の変数を指定します。ここでは、実際のコード例を交えながら、変数に格納したドキュメントをsave()メソッドでコレクションに保存する手順を解説します。

変数の作成

まず、保存したいドキュメントを変数として定義しましょう。以下の例では、「Info」という変数に、名前・国名・プロジェクト詳細(配列形式)を含むドキュメントを作成しています。

> var Info={"Name":"David",
... "CountryName":"US",
... "ProjectDetails":[{"ClientName":"David","ProjectName":"Online Banking System"}]}

save()メソッドで変数の値を保存する

続いて、save()メソッドの引数にこの変数を渡して実行します。これにより、変数の中身がそのままコレクションへ保存されます。

> db.demo483.save(Info);
WriteResult({ "nInserted" : 1 })

「WriteResult({ "nInserted" : 1 })」と表示されれば、1件のドキュメントが正常に挿入されたことを示しています。

find()メソッドで保存結果を確認する

find()メソッドにpretty()を組み合わせて実行すると、コレクション内のすべてのドキュメントを整形された見やすい形式で表示できます。

> db.demo483.find().pretty();

実行すると、以下のような出力が得られます。

{
   "_id" : ObjectId("5e82e0d6b0f3fa88e22790a0"),
   "Name" : "David",
   "CountryName" : "US",
   "ProjectDetails" : [
      {
         "ClientName" : "David",
         "ProjectName" : "Online Banking System"
      }
   ]
}

補足:save()メソッドは非推奨(deprecated)

なお、save()メソッドはMongoDB 4.2以降で非推奨となっている点に注意してください。最新のMongoDBでは、新規ドキュメントの挿入にはinsertOne()insertMany()、既存ドキュメントの置換にはreplaceOne()の使用が推奨されています。上記の例も、現在の推奨スタイルではdb.demo483.insertOne(Info)のように書き換えることができます。

  1. MongoDBのsave()メソッドの正しい使い方を徹底解説

    MongoDBのsave()メソッドとはdb.collection.save()は、ドキュメントのパラメータに応じて、既存ドキュメントの更新または新規ドキュメントの挿入を行うためのメソッドです。ドキュメントに_idフィールドが含まれており、そのIDがコレクション内に存在する場合は更新(update)として動作し、存在しない場合や_idがない場合は新規挿入(insert)として動作します。注意: save()メソッドはMongoDB 4.2以降で非推奨(deprecated)となっています。新しいプロジェクトでは、代わりにinsertOne()やreplaceOne()などの使用が推奨されます。

  2. MySQLでユーザー定義変数に値を格納する方法|SET文と:=演算子の使い方

    MySQLでは、ユーザー定義変数(ユーザー変数)に1つのステートメント内で値を格納し、その後の別のステートメントからその値を参照することができます。ここでは、ユーザー定義変数に値を格納する2つの方法を解説します。SETステートメントを使う方法最も基本的な方法は、SETステートメントを使用してユーザー定義変数に値を代入するやり方です。構文SET @var_name = expr[, @var_name = expr]…;この構文における @var_name は変数名であり、現在のキャラクタセットで使用できる英数字の文字列で構成されます。SETステートメントでは、代入演算子として「=」または「:=