我是mongodb的新手。我需要链接两个集合,类似于relationaldb,一个使用主键和外键概念。
我知道mongodb不支持joins。
comments
{ uid:12345, pid:444, comment="blah" }
{ uid:12345, pid:888, comment="asdf" }
{ uid:99999, pid:444, comment="qwer" }
users
{ uid:12345, name:"john" }
{ uid:99999, name:"mia" }在comments集合中,uid-->主键,在users中,uid -->外键。
如何在mongodb中处理这种关系,同时在其中插入集合?如何引用?
你能把mongodb的命令发给我吗?
发布于 2012-08-30 21:04:34
在使用MongoDB时,一个常见的新手错误是将其视为关系数据库。
在MongoDB中,您通常不需要自己的is,因为每个文档都自动具有_id字段(这是一个GUID)。
要在MongoDB中引用另一个实体,可以使用DBRef对象。因此,每个注释文档都应该有一个字段"author“,它是指向users集合中的文档的DBRef。或者,您可以只使用要引用的对象的GUID作为"author“的值。
详情请参见http://docs.mongodb.org/manual/applications/database-references/。
关于将文档和它引用的文档放在一起:在加载文档时,您必须在应用程序级别上执行此操作。MongoDB Java驱动程序中的DBRef类有fetch()方法,该方法自动获取它所引用的文档。这使得它的实现变得相当简单。
https://stackoverflow.com/questions/12197098
复制相似问题