是否可以使用mongoose.js删除集合或整个数据库?Mongoose.js:删除集合或数据库
27
A
回答
51
是的,虽然你通过本地MongoDB驱动程序,而不是Mongoose本身。假设需要连接的mongoose
变量,则可以通过mongoose.connection.db
访问本机Db
对象,该对象提供了dropCollection
和dropDatabase
方法。
// Drop the 'foo' collection from the current database
mongoose.connection.db.dropCollection('foo', function(err, result) {...});
// Drop the current database
mongoose.connection.db.dropDatabase(function(err, result) {...});
1
Mongoose引用每个模型的连接。因此,您可能会发现从单个模型中删除数据库或集合也很有用。
例如:
// Drop the 'foo' collection from the current database
User.db.db.dropCollection('foo', function(err, result) {...});
// Drop the current database
User.db.db.dropDatabase(function(err, result) {...});
16
1
在猫鼬4.9.8,您可以使用下面的删除与模型相关联的集合。
ModelName.remove({}, function(err, row) {
if (err) {
console.log("Collection couldn't be removed" + err);
return;
}
console.log("collection removed");
})
+0
这不会删除集合。它删除集合中的所有记录。对于大量记录,它可能需要很长时间,导致超时... – user3616725 2017-10-19 14:24:59
相关问题
- 1. 删除MongoDB数据库和集合
- 2. 删除库中的所有数据集
- 3. 从集合中删除数据库中的项目(EF 4.3)
- 4. 删除MongoDB中的集合后调整数据库大小
- 5. 删除和重新创建ArangoDB数据库保留集合
- 6. ArrayList删除没有集合或导入
- 7. 删除数据库
- 8. 删除数据库
- 9. 使用Java GUI删除数据库或插入数据库
- 10. XQUery集合:删除?
- 11. 删除RavenDB集合
- 12. Laravel - 删除集合
- 13. 数据库:删除或不删除记录
- 14. 数据库:获取并删除或只是删除?
- 15. 哪个更好删除数据库或删除表?
- 16. Mongoose.js Doc Refs - 如何安全地删除
- 17. d3j:删除数据集
- 18. 删除SAS数据集
- 19. 从集合中删除集合
- 20. Memcache删除还删除数据库?
- 21. 删除/删除Teradata中的数据库
- 22. 删除帐户时删除数据库
- 23. 删除按钮,删除数据库行
- 24. 删除图像数据库删除symfony2
- 25. 从数据库中删除/删除
- 26. iPhone:删除/删除SQLite数据库?
- 27. 删除删除特定集合项目
- 28. 规避数据库表中数据集的行被删除
- 29. MongoDb数据库与集合
- 30. 根据集合A的结果从集合B中删除A
非常感谢! – WHITECOLOR 2012-07-15 17:59:47
请注意,这些方法也会返回promise,所以您可以执行诸如await mongoose.connection.db.dropCollection('foo');'而不是用回调挣扎 – 2017-11-11 20:04:40