mongoDB collection name包含特殊字符处理方法

为了删除具有_或-等特殊字符的集合,您需要使用以下语法-

db.getCollection("yourCollectionName").drop();

为了理解这个概念,让我们用文档创建一个集合。使用文档创建集合的查询如下-

> db.createCollection("_personalInformation");
{ "ok" : 1 }

> db.getCollection('_personalInformation').insertOne({"ClientName":"Chris","ClientCountryName":"US"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9158bb4afe5c1d2279d6b2")
}
> db.getCollection('_personalInformation').insertOne({"ClientName":"Mike","ClientCountryName":"UK"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9158c84afe5c1d2279d6b3")
}
> db.getCollection('_personalInformation').insertOne({"ClientName":"David","ClientCountryName":"AUS"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9158d54afe5c1d2279d6b4")
}

find()method的帮助下显示集合中的所有文档。查询如下-

> db.getCollection('_personalInformation').find().pretty();

以下是输出-

{
   "_id" : ObjectId("5c9158bb4afe5c1d2279d6b2"),
   "ClientName" : "Chris",
   "ClientCountryName" : "US"
}
{
   "_id" : ObjectId("5c9158c84afe5c1d2279d6b3"),
   "ClientName" : "Mike",
   "ClientCountryName" : "UK"
}
{
   "_id" : ObjectId("5c9158d54afe5c1d2279d6b4"),
   "ClientName" : "David",
   "ClientCountryName" : "AUS"
}

这是从MongoDB中删除具有特殊字符的集合的查询-

> db.getCollection("_personalInformation").drop();

以下是输出-

True

结果TRUE表示我们已经从MongoDB中完全删除了该集合。

如果建表时,mongoDB collection name 包含特殊字符,如\,/等,这样在使用mongo shell时会报错.

如下图所示:


原因就是collection name包含特殊字符/,处理办法是使用mongodb的getCollection函数,如:

posted @ 2021-02-02 12:59  da0h1  阅读(1748)  评论(0编辑  收藏  举报