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

MongoDBでユーザー名の名前を変更するにはどうすればよいですか?


ユーザーの名前を変更するには、update()と$setを使用して新しいユーザー名を設定する必要があります。以下は構文です-

db.system.users.update({"user":"yourOldUserName"}, {$set:{"user":"yourNewUserName"}});

まず、MongoDBデータベースのすべてのユーザーを表示します-

> use admin;
switched to db admin

> db.getUsers();

これにより、次の出力が生成されます-

[
   {
      "_id" : "admin.Chris",
      "user" : "Chris",
      "db" : "admin",
      "roles" : [
         {
            "role" : "readWrite",
            "db" : "test"
         }
      ],
      "mechanisms" : [
         "SCRAM-SHA-1",
         "SCRAM-SHA-256"
      ]
   },
   {
      "_id" : "admin.John",
      "user" : "John",
      "db" : "admin",
      "roles" : [
         {
            "role" : "userAdminAnyDatabase",
            "db" : "admin"
         }
      ],
      "mechanisms" : [
         "SCRAM-SHA-1",
         "SCRAM-SHA-256"
      ]
   },
   {
      "_id" : "admin.Robert",
      "user" : "Robert",
      "db" : "admin",
      "roles" : [
         {
            "role" : "readWrite",
            "db" : "sample"
         }
      ],
      "mechanisms" : [
         "SCRAM-SHA-1",
         "SCRAM-SHA-256"
      ]
   }
]

次に、ユーザー名の名前を「John」から「Larry」に変更します-

> db.system.users.update({"user":"John"}, {$set:{"user":"Larry"}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

ユーザーが「Larry」という名前で作成されているか、getUser()を使用していないことを確認しましょう-

> db.getUser('Larry');

これにより、次の出力が生成されます-

{
   "_id" : "admin.John",
   "user" : "Larry",
   "db" : "admin",
   "roles" : [
      {
         "role" : "userAdminAnyDatabase",
         "db" : "admin"
      }
   ],
   "mechanisms" : [
      "SCRAM-SHA-1",
      "SCRAM-SHA-256"
   ]
}

古いユーザー名を取得しようとすると、null値が表示されます。同じことを見てみましょう-

> db.getUser('John');

これにより、次の出力が生成されます-

Null

  1. MongoDBのすべてのドキュメントのフィールドの名前を変更するにはどうすればよいですか?

    すべてのドキュメントのフィールドの名前を変更するには、構文は次のとおりです。ここでは、$ renameLを使用しました db.yourCollectionName.update({}, {$rename:{"yourOldFieldName":"yourNewFieldName"}}, false, true); 概念を理解するために、ドキュメントを使用してコレクションを作成しましょう。ドキュメントを使用してコレクションを作成するためのクエリは次のとおりです- > db.renameFieldDemo.insertOne({"Stude

  2. MongoDBでコンソールをクリアする方法は?

    MongoDBでコンソールをクリアするには、次の2つの構文のいずれかを使用できます。 最初の構文は次のとおりです。これは、キーボードショートカットの使用法です- Ctrl + L 上記のキーを押すと、MongoDBでコンソールをクリアできます。 2番目の構文は次のとおりです- cls 上記の構文を理解するために、それらを1つずつ実装してみましょう。これが私のコンソールのスナップショットです。 最初のクエリは、MongoDBのコンソールをクリアするために次のとおりです- Ctrl+L; 以下は出力です- 上記のサンプル出力を見てください。コンソールはクリアされています。