Database MongoDB如何回滚或销毁事务中新创建的集合

Database MongoDB如何回滚或销毁事务中新创建的集合,database,mongodb,transactions,Database,Mongodb,Transactions,我试图解决的问题是,为了创建集合foo,我需要将用户请求数据添加到bar。(如果bar不存在,请创建bar,否则将数据插入bar)接下来,我想将bar的objectID传递到foo字段,以便我可以引用bar并创建foo 但是如果我首先创建barsuccess,然后我尝试创建foo,但是失败了,我想销毁新创建的bar。但是,如果以前存在bar,那么我只想从bar中删除添加的数据 我试图将这些操作添加到事务中,但MongoDB不允许根据以下条件在事务中操作新的集合: 在事务中,只能对现有集合指定读写

我试图解决的问题是,为了创建集合
foo
,我需要将用户请求数据添加到
bar
。(如果
bar
不存在,请创建
bar
,否则将数据插入
bar
)接下来,我想将
bar
的objectID传递到
foo
字段,以便我可以引用
bar
并创建
foo

但是如果我首先创建
bar
success,然后我尝试创建
foo
,但是失败了,我想销毁新创建的
bar
。但是,如果以前存在
bar
,那么我只想从
bar
中删除添加的数据

我试图将这些操作添加到事务中,但MongoDB不允许根据以下条件在事务中操作新的集合:

在事务中,只能对现有集合指定读写(CRUD)操作。例如,多文档事务不能包含导致创建新集合的插入操作


解决此问题的更好方法是什么?

是的,我应该先创建空的更正
foo
bar
,它解决了我的问题。

您能先创建
foo
bar
集合吗?