cannot set options after executing query

1.问题

我操作mongodb进行批量插入时候遇到的报错:

cannot set options after executing query

我执行的代码片段如下:

T_data = collection['xxx'].find({"ID":{$gt:last_num}},{"title":1,"content":1})
arr =[data for data in T_data[start_num:start_num+10000]]
collection2['yyy'].insert_many(arr)

2.原因

因该是在获得一个游标对象后,不能对游标对象取值后还进行limit,skip,遍历等操作,于是在用cursor对象的clone()方法,赋给一个新的操作对象。

3.解决方式

arr =[data for data in T_data[start_num:start_num+10000].clone()]
collection2['yyy'].insert_many(arr)

2021-03-15

23:42:58

原文地址:https://www.cnblogs.com/cheflone/p/14540903.html