找到 1349 篇文章 关于 MongoDB
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, ... 阅读更多
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" : [ { ... 阅读更多
205 次浏览
您可以使用位置运算符 $。让我们首先创建一个包含文档的集合 -> db.demo22.insertOne( ... { ... ProductId:101, ... ... ProductDetails: ... [ ... { ... ProductFirstPrice: '35', ... ProductSecondPrice: '75' ... }, ... { ... ProductFirstPrice: '', ... ProductSecondPrice:'' ... }, ... { ... 阅读更多
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 })显示所有文档 ... 阅读更多
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
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" : ... 阅读更多
167 次浏览
您可以使用 $unset。让我们首先创建一个包含文档的集合 -> db.demo20.insertOne( ... { ... ... "ListOfEmployee" : [ ... { ... "EmployeeName1" : "John" ... }, ... { ... "EmployeeName2" : "Carol" ... } ... ], ... "EmployeeName2" : [] ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5e138c3555d0fc6657d21f12") }以下是查询 ... 阅读更多
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" ... 阅读更多
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] } ... 阅读更多
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", ... 阅读更多