本文为joshua317原创文章,转载请注明:转载自joshua317博客 https://www.joshua317.com/article/290
当集合名称带有特殊字符时,无法从shell命令行删除集合,比如:
代码语言:javascript复制db.my-login.drop()
报出错误:
代码语言:javascript复制2022-12-06T11:20:07.518 0000 E QUERY [thread1] ReferenceError: login is not defined :
问题不在于删除集合。问题在于访问集合。因此,您将无法从外壳程序对其进行更新,查找或执行任何操作。正如mongodb JIRA中指出的那样,当集合中包含_,-或之类的字符时,这是一个错误,所以集合命名时最好不要有特殊字符。
尽管如此,这种类型的集合名称还是可以接受的,但是会在shell中引起问题。
可以使用以下命令在shell中将其删除:
代码语言:javascript复制db.getCollection("my-login").drop()
或者
db['my-login'].drop()
本文为joshua317原创文章,转载请注明:转载自joshua317博客 https://www.joshua317.com/article/290