一、mongoDB介绍和使用

  1、分布式文件储存数据库,使用C++开发的,可以存储任意数据(文件),允许在服务器端执行脚本,使用JSON形式储存数据{key:value}

  2、支持的编程语言有:PHP 、ruby、python、C++、C#、Java等等

  3、使用db表示当前数据库

  4、安装:apt install mongodb / 源码安装

  5、运行:mongo     启用端口 27017

  6、管理工具:NoSQL Manager for MongoDB 、Navicat

  7、https://www.cnblogs.com/phpper/p/9196870.html     windows 系统上PHP7安装mongodb 扩展

二、MongoDB中的一些概念:

  database   数据库

  collection    数据集合(表)

  document     文档(行)

  field        域(字段)

  index   索引

  不支持 表连接

  数据库 ----> 集合----> 文档----> 域

  MongoDB 中可以有多个数据库,不同的数据库可以放置在不同的文件中

  系统数据库:

    admin:相当于root数据库,该数据库是一个高权限的数据库,在该数据库中可以执行全部的命令

    local:存储本地服务器的集合

    config:与数据库的分片有关

三、常用命令:

  show dbs   查看所有数据库

  use admin   切换数据库

  db    当前数据库

  use 数据库名    创建数据库

  db.dropDatabase()     删除当前使用的数据库

  db.createCollection(‘集合名’)    创建集合

  db.集合名.drop()   删除集合   返回值是布尔

  show collections   查看集合

  db.集合名.insert({key1:value1,key2:value2})    创建文档 ,k1和k2是域,v1和v2是域对应的值,域可以不加单双引号

  db.users.find().pretty()   (可读性高)查看users集合下的所有文档

  db.集合名.remove({})   删除文档

  db.集合名.update({被更新的对象},{$set:{更新的内容}})    更新文档,默认只更新第一条发现的数据

    全部更新:db.集合名.update({被更新的对象},{$set:{更新的内容}},{muti:ture})

四、查询数据-条件

  $lt => <      $lte =>  <=       $gt =>  >     $gte => >=     $ne =>  !=     $regex  正则    :  =>  =

  等于:{k:v}

  小于:{k:{$lt:v}}     {id:{$lt:20}} :id小于20的

  大于:{k:{$gt:v}}

  小于等于:{k:{$lte:v}}

  大于等于:{k:{$gte:v}}

  不等于:{k:{$ne:v}}

  多条件使用,隔开  db.集合.find({},{})   多条件是与的关系

  或的关系 db.集合名.find({$or:[{},{}]})

  限制查询的结果:db.集合名.find({k1:v1,k2:v2}).limit(数字)

  跳过前几个来显示查询:db.集合名.find({k1:v1,k2:v2}).skip(1)   跳过第一列

  排序:db.集合名.find({k1:v1,k2:v2}).sort({k:1})    升序

     db.集合名.find({k1:v1,k2:v2}).sort({k:-1})    降序

五、数据类型

  布尔

  数字

  字符

  浮点数

  数组

  内嵌文档

  null

  

最新文章

  1. 用于svn添加当前目录下所有未追踪的文件,和删除所有手动删除的文件的脚本
  2. Android学习---通过内容提供者(ContentProvider)操作另外一个应用私有数据库的内容
  3. 一个servlet处理来自多个不同页面的请求!
  4. iOS开发中常用到的宏定义
  5. HDU 5644 (费用流)
  6. Git 基础学习篇(应用-windows篇)
  7. js 重载i
  8. sirius的学习笔记(2)
  9. wpf 创建动画三种方式
  10. [SDOI2015]权值
  11. Android EditText setOnClickListener事件 只有获取焦点才能响应 采用setOnTouchListener解决
  12. vim ---- 自己主动的按钮indent该命令
  13. keepalive配置文件详解
  14. java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/JPEGCodec
  15. Cocos Creator学习三:生命周期回调函数
  16. Spring cloud的Maven插件(一):repackage目标
  17. Lodop“对象不支持SET__LICENSES属性或方法”SET__LICENSES is not a function”
  18. 解决Fatal error in launcher: Unable to create process using &#39;&quot;&#39;
  19. 1. eclipse异常问题解决办法
  20. javascript中所有函数的参数都是按值传递的

热门文章

  1. 用x种方式求第n项斐波那契数,99%的人只会第一种
  2. CAS实现SSO 单点登录
  3. LaTeX公式学习
  4. tomcat8开启APR模式
  5. Windows下给PHP安装redis扩展
  6. Zookeeper集群部署及报错分析
  7. 用友U8API 8.9-15.0接口开发前提,选好开发方式
  8. ElasticJob和SpringBoot
  9. PHP strftime() 函数
  10. 创建githup远程库并关联