MongoDB--数据库与Collection注意事项
<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,"age":2} 与 {"age":2,“name”:1} 是两条记录<br />
4、尽量将相同结构的文档放在一个集合里面,因为创建的索引页会有结构。不同结构的数据会影响索引效率<br />
5、db.createCollection("XXXXX") 创建集合<br />
6、当实例启动的时候 加上--objcheck 选项的时候,会对象数据库插入的内容做校验,无效的格式不允许插入<br />
7、{“$addToSet”:{“emails”:“491922556@qq.com”}} 如果集合存在则不进行添加,如果不存在则进行创建<br />
8、$addToSet 与 $each 组合使用 {“$addToSet”:{“emails”:{“$each”:["491922556@qq.com","1390791944@qq.com"]}}} ,批量添加,并且进行是否存在判断。<br />
9、$pop 数组删除操作 {"$pop":{"emails":-1}} 开头删除一个 {"$pop":{"emails":1}} 结尾删除一个<br />
10、数组可以使用下标index进行修改 db.sun.update({"name":"sun"},{“$set”:{"like.0":"haha"}}) 修改like数组里面第一个数据<br />
11、数组集合的内容还可以根据条件进行更新,使用$符号<br />
<span style="white-space:pre"></span>db.sun.update({"address.city":"shanghai"},{"$set":{"address.$.state":"HH"}})<br />
<span style="white-space:pre"></span>根据子对象条件搜索,修改子对象<br />
12、update 方法,第3个参数为不存在则进行创建,第4个参数为是否可以进行批量修改,默认为根据查询器修改匹配到的第一条<br />
13、db.runCommand({getLastError:1}) 获取上一次更新的情况<br />
14、findAndModify() //查询后,执行更新或者删除,<br />
<span style="white-space:pre"></span>db.runCommand({"findAndModify":"表名",<br />
<span style="white-space:pre"></span>"query":"查询条件",<br />
<span style="white-space:pre"></span>"sort":"排序条件",<br />
<span style="white-space:pre"></span>"update":"根据查询条件更新的内容"<br />
<span style="white-space:pre"></span>"remove":false,//"删除和更新只能存在一个"<br />
<span style="white-space:pre"></span>"new":false //返回的记录是更新前还是更新后的})
MongoDB--数据库与Collection注意事项的更多相关文章
- node.js连接MongoDB数据库,db.collection is not a function完美解决
解决方法一. mongodb数据库版本回退: 这个错误是出在mongodb的库中,在nodejs里的写法和命令行中的写法不一样,3.0的api已经更新和以前的版本不不一样,我们在npm中没指定版本号的 ...
- MongoDB数据库索引
前面的话 索引通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件的记录.这种扫描全集合的查询效率是非常低的,特别在处理大量的数据时,查 ...
- PHP操作MongoDB数据库的示例
http://www.jquerycn.cn/a_8137 本节内容:PHP操作MongoDB数据库的简单示例. Mongodb的常用操作参看手册,php官方的http://us2.php.net/m ...
- FineReport如何连接和使用MongoDB数据库
随着NoSQL数据库越来越流行,MongoDB数据库作为NoSQL数据库中的领头羊,使用也越来越广泛.为此,FineReport V8.0版本提供了数据连接和数据集接口,可以通过开发一款可以连接和使用 ...
- python操作mongodb数据库
一.MongoDB 数据库操作 连接数据库 import pymongo conn = pymongo.Connection() # 连接本机数据库 conn = pymongo.Connection ...
- mongoDB数据库和Spring MVC的整合
之前一直用到的项目是Spring MVC+maven+mysql的,最近有些数据需要用到mongoDB数据库,现在做一些总结. 第一步:加载jar.maven配置 <!-- mongodb开始 ...
- 基于C#的MongoDB数据库开发应用(3)--MongoDB数据库的C#开发之异步接口
在前面的系列博客中,我曾经介绍过,MongoDB数据库的C#驱动已经全面支持异步的处理接口,并且接口的定义几乎是重写了.本篇主要介绍MongoDB数据库的C#驱动的最新接口使用,介绍基于新接口如何实现 ...
- 基于C#的MongoDB数据库开发应用(2)--MongoDB数据库的C#开发
在上篇博客<基于C#的MongoDB数据库开发应用(1)--MongoDB数据库的基础知识和使用>里面,我总结了MongoDB数据库的一些基础信息,并在最后面部分简单介绍了数据库C#驱动的 ...
- 基于C#的MongoDB数据库开发应用(1)--MongoDB数据库的基础知识和使用
在花了不少时间研究学习了MongoDB数据库的相关知识,以及利用C#对MongoDB数据库的封装.测试应用后,决定花一些时间来总结一下最近的研究心得,把这个数据库的应用单独作为一个系列来介绍,希望从各 ...
- JAVA操作MongoDB数据库
1. 首先,下载MongoDB对Java支持的驱动包 驱动包下载地址:https://github.com/mongodb/mongo-java-driver/downloads 2.Java操作Mo ...
随机推荐
- JavaFx自定义Tab-Order
title: JavaFx自定义Tab-Order Tab-order是什么?在界面上当你按tab键触发焦点转移的功能,这就是tab order.但是Javafx有个缺陷就是不方便自己设置tab-or ...
- 玩转spring boot——ajax跨域
前言 java语言在多数时,会作为一个后端语言,为前端的php,node.js等提供API接口.前端通过ajax请求去调用java的API服务.今天以node.js为例,介绍两种跨域方式:Cross ...
- Yii框架后续
关于Yii框架遗留的知识点. 1.url路由方式 (1).问号传参(默认) eg: http://localhost/项目/app/index.php http://localhost/项目/app/ ...
- JavaScript异步编程
前言 如果你有志于成为一个优秀的前端工程师,或是想要深入学习JavaScript,异步编程是必不可少的一个知识点,这也是区分初级,中级或高级前端的依据之一.如果你对异步编程没有太清晰的概念,那么我建议 ...
- redis集群安装部署
(要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下) 192.168.1.160:7000 192. ...
- KafKa介绍(分布式架构)
介绍 Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了普通消息系统的功能,但具有自己独特的设计.这个独特的设计是什么样的呢? 首先让我们看几个基本的消息系统术语: Kafka将消息以to ...
- 关于String的问题
String是在代码中非常常见的一种数据类型.它能直接像基本类型一样直接赋值(String str = "test"),也能像引用类型一样创建一个实例(String str = n ...
- 使用javascript生成当前博文地址的二维码图片
前面的话 在电脑端发现一篇好的博文,想在手机上访问.这时,就必须打开手机浏览器输入长长的URL地址才行,非常不方便.如果在博客标题的后面跟一张小的图片,点击该图片后,出现一张二维码的大图,然后再通过手 ...
- 微信小程序demo
微信小程序demo github地址 去年小程序刚发布时特别火,赶潮流做了个demo.感觉小程序开发还是比较简单的,主要是官方文档写得比较好,遗憾的是很多API需要微信认证才能使用. 由于小程序包大小 ...
- WINFORM实现进程信息的查看,listview,点击,右键,右键菜单
1. 程序设计要求 设计程序来获取计算机中的进程信息 2.程序设计流程图 3.程序设计亮点 (0)程序启动时加载guide引导使用视频 (1)使用Listview控件显示出所有控件的名称. (2) ...