zoukankan      html  css  js  c++  java
  • 【mongodb】常用命令

    MongoDB-常用命令

     

    MongoDB介绍

    MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
    MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似jsonbson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引

    特点

    它的特点是高性能、易部署、易使用,存储数据非常方便。主要功能特性有:
    *面向集合存储,易存储对象类型的数据。
    mongodb集群参考
    *模式自由。
    *支持动态查询
    *支持完全索引,包含内部对象。
    *支持查询。
    *支持复制和故障恢复。
    *使用高效的二进制数据存储,包括大型对象(如视频等)。
    *自动处理碎片,以支持云计算层次的扩展性。
    *支持RUBYPYTHONJAVAC++PHPC#等多种语言。
    *文件存储格式为BSON(一种JSON的扩展)。
    *可通过网络访问。

    数据模型

    一个MongoDB 实例可以包含一组数据库,一个DataBase 可以包含一组Collection(集合),一个集合可以包含一组Document(文档)。一个Document包含一组field(字段),每一个字段都是一个key/value pair。
    key: 必须为字符串类型。
    value:可以包含如下类型。
    • 基本类型,例如,string,int,float,timestamp,binary 等类型。
    • 一个document。
    • 数组类型。

    常用命令

    基本常用命令

    复制代码
    # 查看当前使用的数据库
    db
    # 查看当前服务器磁盘上的所有数据库
    show databases
    # 切换当前使用的数据库,该库不存在代表创建该库
    use dbname
    # 查看当前数据库中磁盘上的所有表
    show tables
    # 使用当前数据库中的tablename表在内存中创建表
    db.tablename
    复制代码

    增删改查

    使用了不存在的对象,就代表创建对象,

    复制代码
    # 创建数据库并使用该数据库
    use s20
    # 创建表
    db.stutent
    # 往表中添加数据【官方不在推荐使用】
    db.stutent.insert({name:"henry"}) # 添加一条数据
    db.stutent.insert([{name:"henry"},{name:"egon"}]) # 添加多条数据
    #【官方推荐】
    db.stutent.instrtOne({name:"henry"})  # 添加单挑数据
    db.stutent.insertMany([{name:"小漩涡"},{name:"500ml"}])
    复制代码

    # 查看所有数据
    db.tablename.find()
    # 查看符合条件的所有数据
    db.tablename.find({name:"小漩涡"})
    # 【官方推荐】在3.2中加的新方法 返回值为json数据
    db.tablename.findOne({name:"henry"}) # 查询出符合条件的第一条数据

    复制代码
    # 修改内容需要用修改器$set
    # 根据查询条件,修改符合条件的第一条数据【官方不在推荐使用】
    db.tablename.update({查询条件},{$修改器:{修改属性}}) 
    db.stutent.update({name:"henry"},{$set:{age:16}}) # 没有age就创建有就修改
    # 【官方推荐】
    db.stutent.updateOne({name:"henry"},{$set:{sex:"male"}}) # 修改一条数据
    db.stutent.updateMany({name:"henry"},{$set:{sex:"female",hobby:"喝酒"}}) # 修改符合条件的所有数据
    复制代码

    复制代码
    # 删除所有符合条件的数据【官方不在推荐使用】
    db.tablename.remove({查询条件})
    # 删除表
    db.tablename.drop()
    # 删除库
    db.dropDatabase()
    #【官方推荐】
    db.tablename.deleteOne() # 删除符合条件的第一条数据
    db.tablename.deleteMany() # 删除所有符合条件的数据
    复制代码
  • 相关阅读:
    北漂IT男返乡2年的三线楼市观察(宜昌夷陵篇)-原创
    写一本书作者到底能拿到多少稿酬?
    书是如何定价的?
    一本书出版社拿多少,作者拿多少?书的成本几何?出版一本书出版社到底能赚多少钱?(转)
    微服务架构最强详解
    今日头条号短视频自媒体研究---最开始的短视频设备资金投入不要太大(原创)
    今日头条号短视频自媒体研究---新手上路,正确拍短视频并上传(原创)
    HTTP请求中的缓存(cache)机制
    linux kernel 中断子系统之(一)-- ARM GIC 硬件【转】
    嵌入式Linux——kmsg:分析/proc/kmsg文件以及写自己的/proc/mymsg【转】
  • 原文地址:https://www.cnblogs.com/youxiu123/p/11493204.html
Copyright © 2011-2022 走看看