mongodb如何删除集合(表)的所有数据???
删除 status 等于 A 的全部文档:
db.inventory.deleteMany({ status : "A" })
删除 status 等于 D 的一个文档:
db.inventory.deleteOne( { status: "D" } )
db.drop() //是将整个集合包含结构删除.
Java 版驱动,删除集合数据对应的写法是:
Document filter =...
rs = getMongoDatabase(conn).getCollection(tableName).deleteMany(filter);
但filter不能为null.
那如何删除所集合(表)的所有文档document(数据记录)呢?
如删除集合下全部文档:
原生语法是:
db.inventory.deleteMany({})
mongodb的语法,比起SQL还是费劲许多.
有没有面向对象操作的方法呢?
像以下这种写法,
public static void main(String[] args) {
SuidRich suidRich = BF.getSuidRich(); //获取Select,Update,Insert,Delete操作对象
int delNum = suidRich.delete(new Orders3()); //删除Orders3集合(表)里的所有数据
Logger.info("delNum:" + delNum);
}
其实这种做法,是很危险的.试想,要是在生产环境,错误操作,所有用的数据都删了,那可不行.
看看一个小巧易用的ORM框架,十分钟即可入门,还可以防止误删除.
设置不允许删除整个集合(表)的数据,即可.
bee.osql.notDeleteWholeRecords=true
日志:
[WARN] BeeIllegalBusinessException: It is not allowed delete whole documents(records) in one collection(table).
[INFO] delNum:-1
注: 返回-1,表示有异常
源码下载:
https://github.com/automvc/bee
Hibernate/MyBatis + plus + Sharding-JDBC + jpa + Spring data +GraphQL+手机App ORM = Bee
Java ORM中间件选型:要整合一堆的工具,还不如只用一个小巧又功能强大的工具
原文地址:https://blog.csdn.net/abckingaa/article/details/128279116
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。