db.collection.deleteMany() 方法未检测到名称中包含“-”的文档 collection(例如 internal-metrics)

Document collection having '-' in name (e.g. internal-metrics) is not detected by db.collection.deleteMany() method

我在 mongoDB 数据库中有文档 collection,标题为 'internal-metrics'。我想清空这个 collection 以用新数据填充它。

我尝试使用 db.collection.deleteMany() 和 db.collection.remove() 方法,但两者都回复了以下消息。

2019-06-14T11:22:26.132+0530 E QUERY    [js] ReferenceError: metrics is 
not defined :
@(shell):1:1

同样的方法适用于标题为 'student' 的文档 collection。

MongoDB Enterprise TestCluster-shard-0:PRIMARY> use DevDatabase
switched to db DevDatabase
MongoDB Enterprise TestCluster-shard-0:PRIMARY> show tables
assessment
assignment
assignment-configuration
internal-metrics
knowledge-base
response
rubric-master
student
MongoDB Enterprise TestCluster-shard-0:PRIMARY> db.internal- 
metrics.deleteMany({})
2019-06-14T11:21:15.779+0530 E QUERY    [js] ReferenceError: metrics is 
not defined :
@(shell):1:1
MongoDB Enterprise TestCluster-shard-0:PRIMARY> db.internal- 
metrics.remove()
2019-06-14T11:22:26.132+0530 E QUERY    [js] ReferenceError: metrics is 
not defined :
@(shell):1:1
MongoDB Enterprise TestCluster-shard-0:PRIMARY> db.student.deleteMany({})
{ "acknowledged" : true, "deletedCount" : 6 }
MongoDB Enterprise TestCluster-shard-0:PRIMARY> db.internal- 
metrics.remove({})
2019-06-14T11:23:50.269+0530 E QUERY    [js] ReferenceError: metrics is 
not defined :
@(shell):1:1
MongoDB Enterprise TestCluster-shard-0:PRIMARY> db.internal- 
metrics.remove({})
2019-06-14T11:27:25.946+0530 E QUERY    [js] ReferenceError: metrics is 
not defined :
@(shell):1:1

我希望使用 mongoDB shell 上的方法清空 collection。

尝试:

db.getCollection('internal-metrics').remove({})

或者,

db['internal-metrics'].remove({})

您必须尝试以下模式db.getCollection('internal-metrics').remove({})