mongodb修改数据的时候
发布于 1个月前 作者 dean5277 330 次浏览 来自 问答

今天练手的时候遇到一个问题,mongodb里面有几个集合,我修改了其中自己的用户名,但其他集合里面已经存了旧的数据用户名,有没有什么办法,可以让我修改了自己用户名的时候,其他集合的旧数据也跟着改变?

除了把其他几个集合单独抽出来修改这个方法外。。。。

11 回复

应该是没有别的办法了吧

我在想 假如相关的集合有好多的话,用户只是修改一个用户名,那得改好多数据啊?

@dean5277 嗯,MongoDB确实不能到这一点,但是可以从数据库的设计上进行一定的规避。假设用户名是有可能会比较频繁变化的内容,那么应该在相关的集合中去保存用户的id,查询数据的时候,通过用户的id获取用户名(类似关系数据库的外键)。

@crystaldust 非常谢谢啦,的确是个好方法。

思路如楼上,存取一个恒定的userId,对于用户名可以建立一张表格对应。 OR:可以根据键值整体updateMany,可以做到。(这种设计思路不太好)

mongodb 不是有关联吗? 关联不严重的话是可以用的

我觉得最简单的方法还是把这种需求的数据交给关系型数据库

你那个是关系型数据库的思想。

放假一上来看到那么多回复,好感动,你们的方法我都会去学习下。

回到顶部