<h2>
    <strong>注意事项:</strong>
</h2>
1、数据库名注意应该全部小写,不能包含空格,最大长度为64K名称<br />
2、数据库存储为多个文件,库名:Per ,文件:Per1、Per2 等,库名:Sun ,文件:Sun1、Sun2 等,但是单个文件最大为2G<br />
3、集合和索引对应的命名空间元数据保存在.ns文件中<br />
<br />
<br />

<h2>
    表:
</h2>
1、存储的数据字段为强类型,“age”与“Age”是两个不同的属性<br />
2、同一行数据的列明不能重复<br />
3、列名是有顺序的,相同列名与内容,顺序不同为2条记录,{“name”:1,&quot;age&quot;:2} &nbsp;与 {&quot;age&quot;:2,“name”:1} 是两条记录<br />
4、尽量将相同结构的文档放在一个集合里面,因为创建的索引页会有结构。不同结构的数据会影响索引效率<br />
5、db.createCollection(&quot;XXXXX&quot;) 创建集合<br />
6、当实例启动的时候 加上--objcheck 选项的时候,会对象数据库插入的内容做校验,无效的格式不允许插入<br />
7、{“$addToSet”:{“emails”:“491922556@qq.com”}} &nbsp;如果集合存在则不进行添加,如果不存在则进行创建<br />
8、$addToSet 与 $each 组合使用 {“$addToSet”:{“emails”:{“$each”:[&quot;491922556@qq.com&quot;,&quot;1390791944@qq.com&quot;]}}} ,批量添加,并且进行是否存在判断。<br />
9、$pop 数组删除操作 {&quot;$pop&quot;:{&quot;emails&quot;:-1}} 开头删除一个 {&quot;$pop&quot;:{&quot;emails&quot;:1}} 结尾删除一个<br />
10、数组可以使用下标index进行修改 db.sun.update({&quot;name&quot;:&quot;sun&quot;},{“$set”:{&quot;like.0&quot;:&quot;haha&quot;}}) &nbsp;修改like数组里面第一个数据<br />
11、数组集合的内容还可以根据条件进行更新,使用$符号<br />
<span style="white-space:pre"></span>db.sun.update({&quot;address.city&quot;:&quot;shanghai&quot;},{&quot;$set&quot;:{&quot;address.$.state&quot;:&quot;HH&quot;}})<br />
<span style="white-space:pre"></span>根据子对象条件搜索,修改子对象<br />
12、update 方法,第3个参数为不存在则进行创建,第4个参数为是否可以进行批量修改,默认为根据查询器修改匹配到的第一条<br />
13、db.runCommand({getLastError:1}) 获取上一次更新的情况<br />
14、findAndModify() &nbsp;//查询后,执行更新或者删除,<br />
<span style="white-space:pre"></span>db.runCommand({&quot;findAndModify&quot;:&quot;表名&quot;,<br />
<span style="white-space:pre"></span>&quot;query&quot;:&quot;查询条件&quot;,<br />
<span style="white-space:pre"></span>&quot;sort&quot;:&quot;排序条件&quot;,<br />
<span style="white-space:pre"></span>&quot;update&quot;:&quot;根据查询条件更新的内容&quot;<br />
<span style="white-space:pre"></span>&quot;remove&quot;:false,//&quot;删除和更新只能存在一个&quot;<br />
<span style="white-space:pre"></span>&quot;new&quot;:false //返回的记录是更新前还是更新后的})

MongoDB--数据库与Collection注意事项的更多相关文章

  1. node.js连接MongoDB数据库,db.collection is not a function完美解决

    解决方法一. mongodb数据库版本回退: 这个错误是出在mongodb的库中,在nodejs里的写法和命令行中的写法不一样,3.0的api已经更新和以前的版本不不一样,我们在npm中没指定版本号的 ...

  2. MongoDB数据库索引

    前面的话 索引通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件的记录.这种扫描全集合的查询效率是非常低的,特别在处理大量的数据时,查 ...

  3. PHP操作MongoDB数据库的示例

    http://www.jquerycn.cn/a_8137 本节内容:PHP操作MongoDB数据库的简单示例. Mongodb的常用操作参看手册,php官方的http://us2.php.net/m ...

  4. FineReport如何连接和使用MongoDB数据库

    随着NoSQL数据库越来越流行,MongoDB数据库作为NoSQL数据库中的领头羊,使用也越来越广泛.为此,FineReport V8.0版本提供了数据连接和数据集接口,可以通过开发一款可以连接和使用 ...

  5. python操作mongodb数据库

    一.MongoDB 数据库操作 连接数据库 import pymongo conn = pymongo.Connection() # 连接本机数据库 conn = pymongo.Connection ...

  6. mongoDB数据库和Spring MVC的整合

    之前一直用到的项目是Spring MVC+maven+mysql的,最近有些数据需要用到mongoDB数据库,现在做一些总结. 第一步:加载jar.maven配置 <!-- mongodb开始 ...

  7. 基于C#的MongoDB数据库开发应用(3)--MongoDB数据库的C#开发之异步接口

    在前面的系列博客中,我曾经介绍过,MongoDB数据库的C#驱动已经全面支持异步的处理接口,并且接口的定义几乎是重写了.本篇主要介绍MongoDB数据库的C#驱动的最新接口使用,介绍基于新接口如何实现 ...

  8. 基于C#的MongoDB数据库开发应用(2)--MongoDB数据库的C#开发

    在上篇博客<基于C#的MongoDB数据库开发应用(1)--MongoDB数据库的基础知识和使用>里面,我总结了MongoDB数据库的一些基础信息,并在最后面部分简单介绍了数据库C#驱动的 ...

  9. 基于C#的MongoDB数据库开发应用(1)--MongoDB数据库的基础知识和使用

    在花了不少时间研究学习了MongoDB数据库的相关知识,以及利用C#对MongoDB数据库的封装.测试应用后,决定花一些时间来总结一下最近的研究心得,把这个数据库的应用单独作为一个系列来介绍,希望从各 ...

  10. JAVA操作MongoDB数据库

    1. 首先,下载MongoDB对Java支持的驱动包 驱动包下载地址:https://github.com/mongodb/mongo-java-driver/downloads 2.Java操作Mo ...

随机推荐

  1. Xmind 体验分享

    Xmind 8 体验 初识思维脑图 这两天在学习使用思维脑图(xmind是其中一款软件)ing,在体验了一把思维脑图的使用后,深深感受到了脑洞大开的魔力. 从昨晚开始研究使用,到今天晚上截止,自己试着 ...

  2. PHP中的对象遍历技巧

    PHP中的对象遍历 对象的遍历,主要是指遍历对象中的,对外部可见属性.实际上就是用访问限制符public声明的属性,这点大家肯定很熟悉了.并且,在php中,遍历对象居然与遍历数组一样,都可以用使用fo ...

  3. php实现‘浏览记录’按日期分组

    出题:现有测试数据如下,要求实现如下图中的效果: array(4) { [0] => array(6) { ["visit_id"] => int(127) [&quo ...

  4. Asp.net mvc 小试牛刀一:多语言支持

    最近因为项目需要又从UWP开发转到了Asp.net mvc 开发,由于也不是什么老手,所以就将项目常见的一些技术问题记录一下自己的解决方案. 第一个需求:用户可以自由切换界面显示语言. 解决方案一:界 ...

  5. Node.js编写CLI的实践

    导语:通常而言,Node.js的应用场景有前后端分离.海量web页面渲染服务.命令行工具和桌面端应用等等.本篇文章选取CLI(Command Line Tools)这子领域,来谈谈Node.js编写C ...

  6. 模仿下拉框datalist的jquery插件的一点小经验

    原本项目里是用h5的新属性data-list,但是这个下拉框的数据太多,而data-list似乎没有设置高度的地方,所以写了个小插件,期间也发现了一些bug,目前这个版本算是可以一用的版本,故写一下这 ...

  7. Ubuntu 挂载硬盘分区

    1.先查看当前硬盘分区状态,命令sudo fdisk -l 大致如下:设备 启动 Start 末尾 扇区 Size Id 类型/dev/sda1 2048 206847 204800 100M 7 H ...

  8. Unicode字符集和编码方式

    通常将一个标准中能够表示的所有字符的集合称为字符集,比如ISO/Unicode所定义的字符集为Unicode.在Unicode中,每个字符占据一个码位/Unicode 编号(用4位十六进制数表示,Co ...

  9. 修改node来增加自定义工具命令

    如何通过node创建自定义cmd命令 一.命令功能的实现 1.将自己的自定义工具的文件夹放到当前使用的 node 的安装目录下的 node_modules 文件夹下面: 2.回到node安装目录下复制 ...

  10. 在vue-cli搭建的项目中增加后台mock接口

    用vue-cli搭建一个前端开发环境确实是极其方便,在写前端代码肯定也是少不了需要调用后台提供的业务接口进行前后端交互,特别在敏捷开发中,前后端都要提前确定业务接口并进行打桩,在开发过程中基本是没有现 ...