找到 1349 篇文章 关于 MongoDB
534 次浏览
你需要为此使用 insert() 方法。当你插入自定义 _id 值且文档已存在具有相同自定义 _id 值时,就会出现错误。让我们首先创建一个包含文档的集合。在此基础上,我们尝试再次添加相同的文档,这导致了错误:> db.customIdDemo.insert({"_id":1, "StudentName":"John"}); WriteResult({ "nInserted" : 1 }) > db.customIdDemo.insert({"_id":1, "StudentName":"Carol"}); WriteResult({ "nInserted" : 0, "writeError" : { "code" : 11000, "errmsg" : "E11000 duplicate key error collection: admin.customIdDemo index: _id_ dup key: { : 1.0 }" } }) > db.customIdDemo.insert({"_id":2, "StudentName":"Carol"}); ... 阅读更多
101 次浏览
你可以使用 buildInfo 和 runCommand 来检查 MongoDB 是 32 位还是 64 位。首先将你的数据库切换到 admin。以下是语法:use admin 之后使用以下语法来了解我的服务器是否运行 64 位 MongoDB:db.runCommand(buildInfo) 现在执行上述语法:> use admin switched to db admin > db.runCommand("buildInfo"); 以下是显示 MongoDB 为 64 位的输出:{ "version" : "4.0.5", "gitVersion" : "3739429dd92b92d1b0ab120911a23d50bf03c412", "targetMinOS" : "Windows 7/Windows Server 2008 R2", "modules" : [ ], "allocator" : "tcmalloc", "javascriptEngine" : "mozjs", "sysInfo" : "deprecated", "versionArray" : [ ... 阅读更多
644 次浏览
使用点表示法访问对象。让我们首先创建一个包含文档的集合:> db.nestedObjectDemo.insertOne({"Student" : { "StudentDetails" : { "StudentPersonalDetails" : { "StudentName" : [ "John" ], ... "StudentCountryName" : [ "US" ], ... "StudentCoreSubject" : [ "C", "Java" ], ... "StudentProject" : [ "Online Book Store", "Pig Dice Game" ] } } } }); { "acknowledged" : true, "insertedId" : ObjectId("5c99dfc2863d6ffd454bb650") } 以下是使用 find() 方法显示集合中所有文档的查询:> db.nestedObjectDemo.find().pretty(); 这将产生以下输出:{ "_id" : ObjectId("5c99dfc2863d6ffd454bb650"), "Student" : { "StudentDetails" : ... 阅读更多
581 次浏览
要在 MongoDB 中搜索多个字段的多个值,可以使用 $text 和 $search 运算符。让我们首先创建一个包含文档的集合:>db.searchMultipleFieldsDemo.insertOne({"_id":100, "FirstSubject":"Java", "SecondSubject":"MongoDB"}); { "acknowledged" : true, "insertedId" : 100 } >db.searchMultipleFieldsDemo.insertOne({"_id":101, "FirstSubject":"MongoDB", "SecondSubject":"MySQL"}); { "acknowledged" : true, "insertedId" : 101 } >db.searchMultipleFieldsDemo.insertOne({"_id":102, "FirstSubject":"MySQL", "SecondSubject":"Java"}); { "acknowledged" : true, "insertedId" : 102 } 以下是使用 find() 方法显示集合中所有文档的查询:> db.searchMultipleFieldsDemo.find().pretty(); 这将产生以下输出:{ "_id" : 100, "FirstSubject" : "Java", "SecondSubject" : "MongoDB" } { "_id" : 101, "FirstSubject" : "MongoDB", "SecondSubject" : "MySQL" } { ... 阅读更多
855 次浏览
使用 aggregate() 方法获取字段的所有非唯一值。让我们首先创建一个包含文档的集合:> db.findAllNonDistinctDemo.insertOne({"UserName":"John", "UserAge":28}); { "acknowledged" : true, "insertedId" : ObjectId("5c995078863d6ffd454bb647") } > db.findAllNonDistinctDemo.insertOne({"UserName":"Larry", "UserAge":21}); { "acknowledged" : true, "insertedId" : ObjectId("5c995081863d6ffd454bb648") } > db.findAllNonDistinctDemo.insertOne({"UserName":"Larry", "UserAge":23}); { "acknowledged" : true, "insertedId" : ObjectId("5c995089863d6ffd454bb649") } > db.findAllNonDistinctDemo.insertOne({"UserName":"David", "UserAge":22}); { "acknowledged" : true, "insertedId" : ObjectId("5c995093863d6ffd454bb64a") } > db.findAllNonDistinctDemo.insertOne({"UserName":"John", "UserAge":26}); { "acknowledged" : true, "insertedId" : ObjectId("5c99509d863d6ffd454bb64b") } > db.findAllNonDistinctDemo.insertOne({"UserName":"Robert", "UserAge":24}); { "acknowledged" : true, "insertedId" : ObjectId("5c9950a7863d6ffd454bb64c") } > db.findAllNonDistinctDemo.insertOne({"UserName":"Robert", "UserAge":25}); ... 阅读更多
142 次浏览
要在 MongoDB 中创建索引,请使用 ensureIndex() 方法。让我们首先使用以下查询创建一个集合:> db.createCollection("creatingUniqueIndexDemo"); { "ok" : 1 } 以下是为上述集合创建索引的查询:> db.creatingUniqueIndexDemo.ensureIndex({"UserCountryName":1}, {unique:true}); { "createdCollectionAutomatically" : false, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 } 以下是将一些文档插入上述集合的查询:>db.creatingUniqueIndexDemo.insertOne({"UserName":"John", "UserAge":21, "UserCountryName":"US"}); { "acknowledged" : true, "insertedId" : ObjectId("5c9947bd330fd0aa0d2fe4d8") } >db.creatingUniqueIndexDemo.insertOne({"UserName":"Mike", "UserAge":23, "UserCountryName":"UK"}); { "acknowledged" : true, "insertedId" : ObjectId("5c9947c9330fd0aa0d2fe4d9") } >db.creatingUniqueIndexDemo.insertOne({"UserName":"Robert", "UserAge":26, "UserCountryName":"US"}); 2019-03-26T02:57:52.670+0530 E QUERY [js] WriteError: ... 阅读更多
211 次浏览
以下是使用命令行从 MongoDB 数据库中的所有集合中删除所有索引的语法:db.getCollectionNames().forEach(function(yourVariableName) { db.runCommand({dropIndexes: yourVariableName, index: "*"}); }); 上述语法将删除除 _id 之外的所有索引。让我们检查当前数据库。以下是查询:> db 这将产生以下输出:Test 以下是让我们在删除索引之前显示集合中一些索引的查询:> db.indexingDemo.getIndexes(); 这将产生以下输出:[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_", ... 阅读更多
74 次浏览
要获取满足某些给定条件的所有 MongoDB 文档,请遵循以下任何给定情况:情况 1 以下是使用 $ne 运算符获取不满足单个条件的所有文档的查询:db.yourCollectionName.find({yourFieldName:{$ne:"yourValue"}}).pretty(); 情况 2 以下是使用 $nin 运算符获取不满足两个给定条件的所有文档的查询:db.yourCollectionName.find({yourFieldName:{$nin:["yourValue1", "yourValue2"]}}).pretty(); 让我们首先创建一个集合。以下是使用文档创建集合的查询:>db.findAllExceptFromOneOrtwoDemo.insertOne({"StudentName":"Larry", "StudentSubjectName":"Java"}); { "acknowledged" : true, "insertedId" : ObjectId("5c993d82330fd0aa0d2fe4d2") } >db.findAllExceptFromOneOrtwoDemo.insertOne({"StudentName":"Chris", "StudentSubjectName":"C++"}); { "acknowledged" : true, "insertedId" : ObjectId("5c993d8f330fd0aa0d2fe4d3") } >db.findAllExceptFromOneOrtwoDemo.insertOne({"StudentName":"Robert", "StudentSubjectName":"C"}); { "acknowledged" : true, "insertedId" : ObjectId("5c993d99330fd0aa0d2fe4d4") } ... 阅读更多
3K+ 次浏览
首先,让我们创建一个集合。以下是创建包含文档的集合的查询:> db.documentExistsOrNotDemo.insertOne({"UserId":101, "UserName":"John"}); { "acknowledged" : true, "insertedId" : ObjectId("5c9932bd330fd0aa0d2fe4cf") } > db.documentExistsOrNotDemo.insertOne({"UserId":102, "UserName":"Chris"}); { "acknowledged" : true, "insertedId" : ObjectId("5c9932c6330fd0aa0d2fe4d0") } > db.documentExistsOrNotDemo.insertOne({"UserId":102, "UserName":"Robert"}); { "acknowledged" : true, "insertedId" : ObjectId("5c9932ce330fd0aa0d2fe4d1") }以下是使用find()方法显示集合中所有文档的查询:> db.documentExistsOrNotDemo.find().pretty();这将产生以下输出:{ "_id" : ObjectId("5c9932bd330fd0aa0d2fe4cf"), "UserId" : 101, "UserName" : "John" } { "_id" : ObjectId("5c9932c6330fd0aa0d2fe4d0"), "UserId" : 102, ... 阅读更多
99 次查看
要清除嵌套数组中的项目,请使用 $set 运算符。首先,让我们创建一个集合。以下是创建包含文档的集合的查询:> db.clearingItemsInNestedArrayDemo.insertOne( { ... ... "StudentName" : "John", ... "StudentDetails" : [ ... { ... "ProjectName" : "Online Banking", ... "ProjectDetails" : [ ... { ... "TechnologyUsed" : "Java", ... "TeamSize":5 ... }, ... ... ... 阅读更多