找到 1349 篇文章 关于 MongoDB

如何在 MongoDB 中限制插入同名的项目?

AmitDiwan
更新于 2020年4月2日 06:01:07

153 次浏览

为此,使用 ensureIndex() 并设置 unique:true。让我们创建一个包含文档的集合。在这里,当我们尝试插入重复项时,会发生重复键错误 -> db.demo316.ensureIndex({"SubjectName":1}, {unique:true}); {    "createdCollectionAutomatically" : true,    "numIndexesBefore" : 1,    "numIndexesAfter" : 2,    "ok" : 1 } > db.demo316.insertOne({"SubjectName":"MySQL"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50e378f8647eb59e56205d") } > db.demo316.insertOne({"SubjectName":"MongoDB"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e50e37df8647eb59e56205e") } > db.demo316.insertOne({"SubjectName":"MongoDB"}); 2020-02-22T13:47:05.186+0530 E QUERY [js] WriteError: E11000 duplicate key error collection: test.demo316 index: SubjectName_1 dup key: { : "MongoDB" } : WriteError({    "index" : 0, ... 阅读更多

更新 MongoDB 中的嵌套文档

AmitDiwan
更新于 2020年4月2日 05:56:30

277 次浏览

要更新嵌套文档,请使用 $set。让我们创建一个包含文档的集合 -> db.demo315.insertOne({ _id :101, ...  details: [ ...     {Name: 'Chris', subjects: [{id:1001, SubjectName:"MySQL"}]} ...  ] ... } ...) { "acknowledged" : true, "insertedId" : 101 }使用 find() 方法显示集合中的所有文档 -> db.demo315.find().pretty();这将产生以下输出 -{    "_id" : 101,    "details" : [       {          "Name" : "Chris",          "subjects" : [             {             ... 阅读更多

MongoDB 查询以在数组中设置子项?

AmitDiwan
更新于 2020年4月1日 14:46:08

205 次浏览

您可以使用位置运算符 $。让我们首先创建一个包含文档的集合 -> db.demo22.insertOne( ...    { ...       ProductId:101, ... ...       ProductDetails: ...       [ ...          { ...             ProductFirstPrice: '35', ...             ProductSecondPrice: '75' ...          }, ...          { ...             ProductFirstPrice: '', ...             ProductSecondPrice:'' ...          }, ...          { ... 阅读更多

如何在 MongoDB 数据库中更新子对象?

AmitDiwan
更新于 2020年4月1日 14:42:13

242 次浏览

要更新子对象,请在 MongoDB 中使用 $set。让我们首先创建一个包含文档的集合 ->db.demo21.insertOne({"StudentId":"STU-101", "StudentDetails":{"StudentName":"Chris", "StudentAge":21}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e14be8922d07d3b95082e6f") }使用 find() 方法显示集合中的所有文档 -> db.demo21.find().pretty();这将产生以下输出 -{    "_id" : ObjectId("5e14be8922d07d3b95082e6f"),    "StudentId" : "STU-101",    "StudentDetails" : {       "StudentName" : "Chris",       "StudentAge" : 21    } }以下是更新 MongoDB 中子对象的查询 -> db.demo21.update({"StudentId":'STU-101'}, {$set:{'StudentDetails.StudentName':'Robert'}}); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })显示所有文档 ... 阅读更多

如何关闭启用身份验证的 MongoDB?

AmitDiwan
更新于 2020年4月1日 14:40:23

102 次浏览

要关闭 MongoDB,您需要使用 shutdownServer(),如下面的语法所示 -db.shutdownServer();首先,您需要切换到 admin,如下所示 -use admin;在这里,我们切换到 admin -> use admin; 切换到 db admin以下是关闭服务器的查询 -> db.shutdownServer();这将产生以下输出 -服务器应该已关闭... 2020-01-07T22:40:31.295+0530 I NETWORK [js] trying reconnect to 127.0.0.1:27017 failed 2020-01-07T22:40:32.326+0530 I NETWORK [js] reconnect 127.0.0.1:27017 failed failed

如何获取 MongoDB 中打开的连接数?

AmitDiwan
更新于 2020年4月2日 05:37:14

367 次浏览

要获取打开的连接数,请在 MongoDB 中使用 serverStatus()。以下是查询 -> db.serverStatus();这将产生以下输出 -{    "host" : "DESKTOP-QN2RB3H",    "version" : "4.0.5",    "process" : "mongod",    "pid" : NumberLong(10540),    "uptime" : 74156,    "uptimeMillis" : NumberLong(74156688),    "uptimeEstimate" : NumberLong(74156),    "localTime" : ISODate("2020-01-07T15:09:18.366Z"),    "asserts" : {       "regular" : 0,       "warning" : 0,       "msg" : 0,       "user" : 1,       "rollovers" : 0    },    "connections" : {       "current" : ... 阅读更多

如何在 MongoDB 中删除文档中的特定数据?

AmitDiwan
更新于 2020年4月1日 14:31:47

167 次浏览

您可以使用 $unset。让我们首先创建一个包含文档的集合 -> db.demo20.insertOne( ...    { ... ...       "ListOfEmployee" : [ ...          { ...             "EmployeeName1" : "John" ...          }, ...          { ...             "EmployeeName2" : "Carol" ...          } ...       ], ...       "EmployeeName2" : [] ...    } ... ); {    "acknowledged" : true,    "insertedId" : ObjectId("5e138c3555d0fc6657d21f12") }以下是查询 ... 阅读更多

在 MongoDB 中使用正则表达式进行文本搜索

AmitDiwan
更新于 2020年4月1日 14:30:21

482 次浏览

要在 MongoDB 中使用正则表达式过滤记录,请使用 $regex。让我们首先创建一个包含文档的集合 -> db.demo19.insertOne({"Values":"4321GH"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e1389b955d0fc6657d21f0f") } > db.demo19.insertOne({"Values":"12321_Carol"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e1389c755d0fc6657d21f10") } > db.demo19.insertOne({"Values":"8765Mike"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e1389d355d0fc6657d21f11") }以下是使用 find() 方法显示集合中所有文档的查询 -> db.demo19.find();这将产生以下输出 -{ "_id" : ObjectId("5e1389b955d0fc6657d21f0f"), "Values" : "4321GH" } { "_id" : ObjectId("5e1389c755d0fc6657d21f10"), "Values" : "12321_Carol" } { "_id" : ObjectId("5e1389d355d0fc6657d21f11"), "Values" : "8765Mike" ... 阅读更多

使用更新操作在 MongoDB 中将字段转换为数组

AmitDiwan
更新于 2020年4月1日 14:28:48

173 次浏览

要将字段转换为数组,请在 forEach() 内使用 UPDATE 操作。让我们首先创建一个包含文档的集合 -> db.demo18.insertOne({"StudentName":"John"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e1387fc55d0fc6657d21f0e") }以下是使用 find() 方法显示集合中所有文档的查询 -> db.demo18.find();这将产生以下输出 -{ "_id" : ObjectId("5e1387fc55d0fc6657d21f0e"), "StudentName" : "John" }以下是使用更新操作将字段转换为数组的查询 -> db.demo18.find().forEach(function(myDocument) { ...    db.demo18.update( ...       { _id: myDocument._id }, ...       { "$set": { "StudentName": [myDocument.StudentName] } ... 阅读更多

如果所有键都存在为字段,则如何在 MongoDB 中过滤文档?

AmitDiwan
更新于 2020年4月1日 14:26:33

271 次浏览

为此,使用 $all,它将查找包含数组(如“键”)中所有元素的文档。让我们首先创建一个包含文档的集合 -> db.demo17.insertOne({"ListOfSubject":["MySQL", "MongoDB", "Java"]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e13847255d0fc6657d21f0a") } > db.demo17.insertOne({"ListOfSubject":["C", "Python", "Java"]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e13847e55d0fc6657d21f0b") } > db.demo17.insertOne({"ListOfSubject":["C++", "MongoDB", "PL/SQL"]}); {    "acknowledged" : true,    "insertedId" : ObjectId("5e13849255d0fc6657d21f0c") }以下是使用 find() 方法显示集合中所有文档的查询 -> db.demo17.find();这将产生以下输出 -{ "_id" : ObjectId("5e13847255d0fc6657d21f0a"), "ListOfSubject" : [ "MySQL", "MongoDB", ... 阅读更多

广告