mongoDB教程(五):命名规范

news2024/9/20 13:00:44

还是大剑师兰特:曾是美国某知名大学计算机专业研究生,现为航空航海领域高级前端工程师;CSDN知名博主,GIS领域优质创作者,深耕openlayers、leaflet、mapbox、cesium,canvas,webgl,echarts等技术开发,欢迎加底部微信(gis-dajianshi),一起交流。

在这里插入图片描述

No.内容链接
1Openlayers 【入门教程】 - 【源代码+示例300+】
2Leaflet 【入门教程】 - 【源代码+图文示例 150+】
3Cesium 【入门教程】 - 【源代码+图文示例200+】
4MapboxGL【入门教程】 - 【源代码+图文示例150+】
5前端就业宝典 【面试题+详细答案 1000+】

文章目录

      • 一、数据库命名规范
      • 二、集合命名规范
      • 三、文档键(Field)命名规范
      • 四、索引命名规范
      • 五、其他注意事项


在这里插入图片描述
MongoDB 的命名规范非常重要,它不仅影响数据库的可读性和可维护性,还可能影响到数据的一致性和性能。以下是一些推荐的 MongoDB 命名规范:

一、数据库命名规范

  • 数据库名称应该是小写的,并且只包含字母、数字和下划线。
  • 数据库名不能是空字符串。
  • 数据库名不能包含特殊字符,除了下划线 _
  • 数据库名不能以数字开头。
  • 数据库名不应超过64个字符。
  • 避免使用系统保留的数据库名称,如 admin, local, config
  • 数据库名应具有描述性,清晰地表明其用途。

二、集合命名规范

  • 集合名同样应该是小写的,并且只包含字母、数字和下划线。
  • 集合名不能是空字符串。
  • 集合名不能包含空字符 \0
  • 集合名不能以 system. 开头,因为这是为系统集合保留的前缀。
  • 集合名应尽可能简洁,但具有描述性,以反映其包含的数据类型或用途。
  • 避免在集合名中使用点 . 和美元符号 $,尽管它们在某些情况下是允许的,但可能会导致混淆或意外行为,尤其是在使用 MongoDB 的聚合框架时。

三、文档键(Field)命名规范

  • 键名应避免使用除下划线 _ 以外的特殊字符。
  • 键名应该全部小写,多个单词可以使用下划线连接。
  • 键名不能以数字开头。
  • 避免使用 ._id 或任何以 _id 结尾的键名,以防止与 MongoDB 自动生成的 _id 字段冲突。
  • 键名应具有描述性,清晰地表明其存储的数据类型或意义。

四、索引命名规范

  • 索引名长度不应超过128个字符。
  • 尽量使用描述性的名称,以便清楚地了解索引的目的。
  • 当创建组合索引时,考虑将数据基数大的字段放在前面,以提高索引的效率。

五、其他注意事项

  • 虽然 MongoDB 支持 Unicode 字符串作为数据库、集合和键名,但在命名时仍应考虑到国际化和编码问题。
  • 遵循一致的命名约定有助于团队协作和代码的可读性。

这些规范可以帮助你建立一个清晰、一致且易于维护的 MongoDB 数据库架构。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1907423.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

香蕉云编+uniapp打包ios的开发包和生产包

登录香蕉云编,找到 云编-ios证书生成,新建CSR文件,并下载csr文件。 登录苹果开发者中心,进入证书页面。 1.创建一个证书,选择ios Distribution类型即可,这是个通用的证书,既能用来打正式包又能…

想要做好非标设备行业的项目管理,这篇指南请收好!

近年来,随着制造业的快速发展和产业升级的不断推进,非标设备行业迎来了广阔的发展前景。一方面,制造业的快速发展带来了对非标设备的旺盛需求,尤其是在汽车、电子、航空航天等高端制造业领域,非标自动化设备的应用越来…

协议转换网关的工作原理-天拓四方

在当今数字化和网络化的社会中,不同系统和设备之间的通信至关重要。然而,由于技术多样性、厂商差异以及应用需求的复杂性,不同的系统和设备常常采用不同的通信协议,这使得它们之间的直接通信变得困难。为了解决这一问题&#xff0…

解决线程不安全问题的几种方式

线程不安全问题 日常生活中我们会经常碰到在不同的平台上买各种票的问题,例如在App、线下售票窗口等购买火车票、电影票。这里面就存在着线程安全的问题,因为当多个线程访问同一个资源时,会导致数据出错,例如甲和乙两人同时看中了…

深度解析:当下流行的人工智能大模型生成逻辑

在过去的几年里,人工智能领域经历了前所未有的革新,其中最引人注目的就是大规模预训练模型的崛起。这些模型,如GPT系列、BERT、T5、DALLE和CLIP等,凭借其强大的语言理解和生成能力,已经在自然语言处理(NLP&…

ctfshow(web入门-信息搜集)

1.web1 直接F12查看即可 2.web2 根据提示使用抓包工具 3.web3 根据提示使用burp抓包,然后参数使用repeater模块进行发送 4.web4 根据提示先访问robots 5.web5 6.web6 使用dirsearch 即可www.zip 7.web7 8.web8 9.web9 10. web10 11.web11 12.web12 根据提示在底…

wordpress的restfull API使用教程,之如何用postman调试API,以便能使用vue等前端框架开发主题

文章目录 API开发手册在postman中调试这里以 post 一篇文章为例,讲解如何调试: 步骤 1:生成应用密码步骤 2:配置Postman步骤 3:创建文章 参考链接 API开发手册 官方API手册:https://developer.wordpress.o…

京东技术团队撰写的整整986页《漫画学Python》到底有什么魅力?

这是一本Python入门书。无论您是想学习编程的小学生,还是想参加计算机竞赛的中学生,抑或是计算机相关专业的大学生,甚至是正在从事软件开发的职场人,本书都适合您阅读和学习。但您若想更深入地学习Python并进行深层次应用&#xf…

07.C2W2.Part-of-Speech (POS) Tagging and Hidden Markov Models

往期文章请点这里 目录 OverviewPart of Speech TaggingMarkov ChainsMarkov Chains and POS TagsPOS tags as StatesTransition probabilitiesThe transition matrixInitial probabilities Hidden Markov ModelsEmission probabilitiesSummary Calculating ProbabilitiesTran…

【实习问题记录】Nodeclub本地部署

问题描述 在按照官方网站给出的教程一步一步操作以后发现出现以下报错: 问题分析 显示连接不上mongodb,分析报错可能是因为版本不匹配导致的,查看安装的mongodb版本发现是7.0.4,与目标版本不匹配,同时查看mongodb官…

C#写的winform项目无法打包发布?谈谈思路

🏆本文收录于「Bug调优」专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&…

一款简单、免费的web文件共享服务器

#共享文件# #远程访问# #手机访问# 文件共享已成为我们日常生活和工作中不可或缺的一部分。它如同一条无形的纽带,将人们紧密地联系在一起,促进了信息的快速传播和交流。 文件共享的魅力在于其打破了地域和时间的限制。无论我们身处世界的哪个角落&…

Leetcode2542-最大子序列的分数

1.问题转换 首先明确题意,要选取的值和num1,num2两个数组都有关,但是num1中选取的是k个数,num2中选取的是1个数,显然num2中的数所占的权重较大(对结果影响较大),所以我们就可以对nu…

猫咪浮毛满天飞怎么办?希喂、352、米家养猫空气净化器对比测试

作为一名资深铲屎官,表现掉毛季又来了,猫咪的毛发满天飞,怎么办?我家里的猫咪一到换毛季就掉满地的毛发,尤其喜欢在家里奔跑打闹,结果整个房间都是毛。家里的猫掉毛特别严重,感觉随便咳两下就能…

前端web在线PPT编辑器-PPTLIST

哈喽,大家好,今天给大家介绍一款的在线的PPT编辑器开源框架-PPTLIST;他是一个基于 Vue3.x TypeScript 的在线演示文稿(幻灯片)应用,还原了大部分 Office PowerPoint 常用功能,支持 文字、图片、…

[FBCTF2019]RCEService

[FBCTF2019]RCEService 绕过正则 随便输一下Json格式的东西 发现了get方式的cmd参数 然后{"cmd":"ls /"}没回显应该是被过滤了 {"cmd":"ls"}正则函数preg_match只能匹配第一行 Linux中cat命令实际是在bin中 ?cmd{%0a"cmd&quo…

微信小程序开发-003-首页(轮播图,状态栏,导航栏)

哈喽小伙伴们大家好,我是程序媛小李,今天,我们继续来开发微信小程序. 在这里,先贴上首页的效果图: 整个页面大概可以分为顶部的状态栏区域,轮播图区域,公司信息区域,商品导航区域,商品推荐区域,以及最下面的导航栏区域. 一,底部导航栏 在这里,我们遵循从外到内的原则,我们先来…

【力扣: 15题: 三数之和】

15题: 三数之和 给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k ,同时还满足 nums[i] nums[j] nums[k] 0 。请 你返回所有和为 0 且不重复的三元组。 注意: 答案中不可以包含重复的三元组。 …

回归损失和分类损失

回归损失和分类损失是机器学习模型训练过程中常用的两类损失函数,分别适用于回归任务和分类任务。 回归损失函数 回归任务的目标是预测一个连续值,因此回归损失函数衡量预测值与真实值之间的差异。常见的回归损失函数有: 均方误差&#xff…

参考人物和背景生成惊艳图片,comfyui风格工作流!

前言 轻松使用ComfyUI生成惊艳图片:快速指南 在这篇文章中,我们将分享如何使用ComfyUI工作流轻松生成高质量的图像。这一过程不仅适合专业的设计师,同样也适用于刚开始接触图像生成技术的用户。通过本文,你将了解如何利用ComfyU…