mongodb - MongoDb 约束只允许集合中的一个条目
问题描述
我可以制定一个约束来防止一个集合中出现多个文档吗?该集合将存储数据库结构的版本
在 SQL 中,我会在表上设置一个检查约束,检查表中的行数是否小于 2
解决方案
我相信最好的方法是使用User-Defined Roles来提供Collection-Level Access Control。您可以创建一个具有初始的文档,database_version
然后为您的用户分配一个角色,该角色限制对集合的访问以仅查找和更新文档。
PS:在寻找解决方案时,您可能会遇到一种可能的替代方案,称为Capped Collections。如果更新导致文档大小增加,则它不适用于您的情况,因为 Capped Collections 会限制更新。
推荐阅读
- c# - 更改 TableLayoutPanel 的单元格(背景颜色/图像)?
- java - 在 ParentActivity 中调用方法片段时适配器返回 null?
- sql-server - SSIS 审核步骤遇到错误
- xamarin - 缺少 Windows 管理程序平台
- mysql - MySQL 表的分区似乎不会提高性能
- c - 复合声明和全局变量的 C 规则
- php - 通过 .htaccess 进行 SEO 友好的 URL 参数
- python - 如何在python中的csv中写入文件名和行数?
- kubernetes - kubernetes 健康检查查找字符串
- sqlite - sqlite 更新左连接两个表