# 为什么没有筛选条件的数据库更新会被拦截？

Canonical URL: https://help.iagenify.com/zh/faqs/databases/why-does-a-database-update-without-a-filter-get-blocked

[← 返回数据库常见问题](https://help.iagenify.com/zh/faqs/databases)

帮助中心 · 常见问题 数据库 1 分钟阅读
# 为什么没有筛选条件的数据库更新会被拦截？
如果更新或删除操作没有筛选条件或 SQL WHERE 子句，IaGenify 会拦截它，除非你明确确认要更改所有匹配记录。这项保护可以避免因遗漏条件而意外影响整个集合或表。
IaGenify
数据库

## 安全检查如何工作
在 MongoDB 中，空筛选条件可能匹配集合内的所有文档。在 SQL 中，不带 WHERE 的 UPDATE 或 DELETE 可能修改或删除目标表中的全部行。
存储工具会识别这些无范围限制的操作，并要求执行前显式确认 `all: true`。
这项检查不会判断全量更改是否合适，只会让广泛影响范围变得明确。更安全的做法是先查询目标记录，使用稳定键构建筛选条件，并在写入前检查匹配结果。对于 SQL，应使用 WHERE 条件准确指出需要更改的行。
## 谨慎使用全量确认
如果确实要更新或删除所有记录，`all: true` 会为本次操作确认这一范围。只有在请求明确要求全量更改且你已评估后果时才使用它。此选项不会提供撤销功能；如果需要恢复，应事先保留备份或导出。
如果原本只想进行局部更新，不要为了消除错误而直接添加确认。请修正筛选条件，核对目标存储及表或集合，并在执行写入前检查匹配记录。这样可以利用这条错误信息准确界定预期范围。 [← 返回数据库常见问题](https://help.iagenify.com/zh/faqs/databases)
