zoukankan      html  css  js  c++  java
  • MongoDB基本操作-数据库的创建、删除、修改、查找

    一、数据库操作的基本命令

    1."show dbs" 命令可以显示所有数据的列表。 show tables 显示集合列表

    2.执行 "db" 命令可以显示当前数据库对象或集合。

    3.运行"use"命令,可以连接到一个指定的数据库。

    4.删除数据库 db.dropDatabase()   删除集合  db.collection.drop()

     5.查看集合中的文档db.col.find()

    二、数据库的创建

    语法   use DATABASE_NAME

    如果数据库不存在,则创建数据库,否则切换到指定数据库。

    实例

    以下实例我们创建了数据库 book

    > use book
    switched to db book
    > db
    test
    >

    刚创建的数据库 runoob 并不在数据库的列表中, 要显示它,我们需要向 runoob 数据库插入一些数据。

    MongoDB 中默认的数据库为 test,如果你没有创建新的数据库,集合将存放在 test 数据库中。




    三、
    MongoDB 删除数据库

    语法

    MongoDB 删除数据库的语法格式如下:

    db.dropDatabase()

    删除当前数据库,默认为 test,你可以使用 db 命令查看当前数据库名。

    实例

    以下实例我们删除了数据库 book。

    首先,查看所有数据库:

    > show dbs
    local   0.078GB
    runoob  0.078GB
    test    0.078GB

    接下来我们切换到数据库 runoob:

    > use runoob
    switched to db runoob
    >

    执行删除命令:

    > db.dropDatabase()
    { "dropped" : "runoob", "ok" : 1 }

    最后,我们再通过 show dbs 命令数据库是否删除成功:

    > show dbs
    local  0.078GB
    test   0.078GB
    >

    删除集合

    集合删除语法格式如下:

    db.collection.drop()

    以下实例删除了 runoob 数据库中的集合 site:

    > use runoob
    switched to db runoob
    > show tables
    site
    > db.site.drop()
    true
    > show tables
    >
    四、MongoDB 插入文档

    插入文档

    MongoDB 使用 insert() 或 save() 方法向集合中插入文档,语法如下:

    db.COLLECTION_NAME.insert(document)

    实例

    以下文档可以存储在 MongoDB 的 runoob 数据库 的 col 集合中:

    >db.col.insert({title: 'MongoDB 教程', 
        description: 'MongoDB 是一个 Nosql 数据库',
        by: '菜鸟教程',
        url: 'http://www.runoob.com',
        tags: ['mongodb', 'database', 'NoSQL'],
        likes: 100
    })

    以上实例中 col 是我们的集合名,如果该集合不在该数据库中, MongoDB 会自动创建该集合并插入文档。

    查看已插入文档:

    > db.col.find()
    { "_id" : ObjectId("56064886ade2f21f36b03134"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
    >

    我们也可以将数据定义为一个变量,如下所示:

    > document=({title: 'MongoDB 教程', 
        description: 'MongoDB 是一个 Nosql 数据库',
        by: '菜鸟教程',
        url: 'http://www.runoob.com',
        tags: ['mongodb', 'database', 'NoSQL'],
        likes: 100
    });

    执行后显示结果如下:

    {
            "title" : "MongoDB 教程",
            "description" : "MongoDB 是一个 Nosql 数据库",
            "by" : "菜鸟教程",
            "url" : "http://www.runoob.com",
            "tags" : [
                    "mongodb",
                    "database",
                    "NoSQL"
            ],
            "likes" : 100
    }

    执行插入操作:

    > db.col.insert(document)
    WriteResult({ "nInserted" : 1 })
    >

    插入文档你也可以使用 db.col.save(document) 命令。如果不指定 _id 字段 save() 方法类似于 insert() 方法。如果指定 _id 字段,则会更新该 _id 的数据。

     

    3.2 版本后还有以下几种语法可用于插入文档:

    •  db.collection.insertOne():向指定集合中插入一条文档数据
    •  db.collection.insertMany():向指定集合中插入多条文档数据
    #  插入单条数据
    
    > var document = db.collection.insertOne({"a": 3})
    > document
    {
            "acknowledged" : true,
            "insertedId" : ObjectId("571a218011a82a1d94c02333")
    }
    
    #  插入多条数据
    > var res = db.collection.insertMany([{"b": 3}, {'c': 4}])
    > res
    {
            "acknowledged" : true,
            "insertedIds" : [
                    ObjectId("571a22a911a82a1d94c02337"),
                    ObjectId("571a22a911a82a1d94c02338")
            ]
    }
     
  • 相关阅读:
    无锁队列以及ABA问题
    bigworld源码分析(3)——dbMgr分析
    bigworld源码分析(4)——BaseAppMgr分析
    bigworld源码分析(5)——BaseApp分析
    bigworld源码分析(2)—— loginApp分析
    bigworld源码分析(1)—— 研究bigworld的意义和目标
    C++嵌入Python,以及两者混用
    B-Tree算法分析与实现
    通过sqlserver日志恢复误删除的数据
    win7启动时怎么自动进入桌面
  • 原文地址:https://www.cnblogs.com/mrruning/p/7789278.html
Copyright © 2011-2022 走看看