草庐IT

author_id

全部标签

mongodb - 在 MongoDB 中通过 id 更新文档中的字段

我想在包含这样文档的集合中添加(+1)一个qty字段:{"_id":{"$oid":"531cc2410b4ebf000036b2d7"},"name":"ALMACEN2","items":[{"id":"111111","marca":"BJFE","tipo":0,"color":"GDRNCCD","mano":1,"modelo":0,"qty":1},{"marca":"BJddFE","tipo":0,"color":"GDffRNCCD","mano":1,"modelo":0,"qty":3},{"marca":"BJeeFE","tipo":0,"color":"G

mongodb - 更新角色用户 : not authorized on admin to execute command

当我尝试获取有关副本的信息时,出现以下错误:rep0:PRIMARY>rs.printReplicationInfo()2015-05-19T13:30:29.231+0200error:{"$err":"notauthorizedforqueryonlocal.system.namespaces","code":13}atsrc/mongo/shell/query.js:131我尝试用以下两个用户执行命令:[{"_id":"admin.siteRootAdmin","user":"siteRootAdmin","db":"admin","roles":[{"role":"root",

Java -- MongoDB collection.find() by _id

我试图通过使用他的唯一_id从集合中获取元素,但我找不到方法。这是我的代码MongoClientmongoClient=newMongoClient("localhost",27017);MongoDatabasedatabase=mongoClient.getDatabase("DB");MongoCollectioncollection=database.getCollection("COLL");如果我用查询我的数据库BasicDBObjectquery=newBasicDBObject("info.i0","0");DocumentmyDoc=collection.find(q

mongodb - mongo3 升级后获取 DatabaseException 'not authorized for query on db.collection'(代码 = 13)

我使用免费的MongoLab,我的数据库在周末升级到Mongo3,现在我的客户端无法连接。我不断收到“未授权查询db.collection”的消息。错误。Mongolab说我应该使用Mongo3兼容的驱动程序(http://docs.mongodb.org/manual/release-notes/3.0-compatibility/#driver-compatibility-changes)。我正在使用scalaReactiveMongo客户端,版本0.11.7,它应该支持Mongo3。 最佳答案 解决方案是将“?authMode

mongodb - 如何删除 MongoDB 中的 _id 并替换为另一个字段作为主键?

我的收藏中有大量文档。我想从所有文档中删除自动生成的对象ID(_id键)并将其替换为另一个字段作为主键?我不明白为什么首先需要默认对象ID? 最佳答案 在mongodb中每个文档必须是唯一的,所以你需要一个唯一的字段作为id。如果您不提供,mongodb会自动为您提供一个。但是,如果您想出于任何原因提供自定义ID(提高查询性能是其中之一),您可以手动进行。这是我的建议:如果要插入新文档,可以手动设置_id字段,如:doc._id="12312312"//(Orwhicheverfunctiontogenerateidyouhave)

java - MongoDB/Morphia 将技术 ID 保存为 ObjectId,尽管它在 Java 中是一个字符串

我的MongoDB中有两种文档:客户端和代码。每个代码代表一个客户。客户端必须由管理员明确存储,因此我必须将它们分开存储,不能将它们放入代码文档中。code->client现在MongoDB/Morphia将客户端的技术ID保存为ObjectId,而代码引用具有String类型技术ID的客户端。我能够通过给定的客户端ID搜索代码,但在运行时我会收到一条错误消息,因为Morphia无法注入(inject)客户端。我认为这是因为不同的id类型。code{client.$id:String}client{_id:ObjectId}有什么办法解决这个问题吗?异常com.google.code.

c# - 如何通过 GUID _id 查找文档?

我使用这段代码来检索一些文档:varclient=newMongoClient(connectionString);vardatabase=client.GetDatabase(databaseName);varcollection=database.GetCollection(collectionName);varjson="{created:{$gte:ISODate(\"2018-12-20T00:00:00.000Z\"),$lt:ISODate(\"2018-12-21T00:00:00.000Z\")}}";BsonDocumentquery=MongoDB.Bson.Se

shell - 通过 id 从 Mongo 中删除旧文档

在我当前的项目中,我们使用Mongo来存储大量文档(大约1000亿)。如何使用字段_id删除一半最旧的文档,因为如果我使用索引字段“timestamp”,此操作将在~3年后以当前速度完成。 最佳答案 这是一个MongoDB用户Google网上论坛帖子的链接,该帖子讨论了基于时间戳生成ObjectId:http://groups.google.com/group/mongodb-user/browse_thread/thread/262223bb0bd52a83/3fd9b01d0ad2c41b来自帖子:从MongoObjectIds

javascript - 从客户端的 mongo _id 中提取日期

我在客户端使用我的文档_id作为字符串。我希望能够像在服务器上一样从这个值中提取时间戳。是否可以在客户端重新创建此功能?(重铸为objectid,或创建一个独立的函数来提取此数据)示例_id:"4f94c2a11a6bbec3872cb315"谢谢! 最佳答案 这个怎么样,分解成几个步骤......不幸的是,它只是存储在ObjectID中的第二个解决时间。varid="4f94c2a11a6bbec3872cb315"​;//first4bytesarethetimestampportion(8hexchars)vartimehex

node.js - 为什么 gridfs get 不能仅按文件名处理文件 ID (ObjectId)

我正在使用nodejsmongodbmongoose和gridfs。当我尝试通过它的文件名获取文件时,如果我想通过id获取它,一切都运行良好错误:您要读取的文件不存在。我使用以下代码console.log("res.pic_id:"+res.pic_id)我得到了正确的ObjectId。这是代码:varGridFS=require('GridFS').GridFS;varmyFS=newGridFS('db');varfs=require('fs')varProfile=db.model('Profile');Profile.findOne({'_id':clientID},['_id