MongoDB初识

2020-05-26  本文已影响0人  GG_lyf

前言

        在用了好长时间的MySQL之后总感觉MySQL建表好麻烦,虽说有可视化工具.但是它不能随心所欲的创建,也不能想添几个字段就添几个字段,它的SQL语句也好多...反正就是各种不舒服,这个关系型的MySQL就这么麻烦,那我看看NoSQL的呗.于是乎就找到了MongoDB,


开搞

MongoDB
        - MongoDB是一个NoSQL的数据库
        - MongoDB是一款文档型数据库
        - 数据库指的就是一个存储数据的仓库
                数据库可以使我们完成对数据的持久化的操作
        - MongoDB数据库中存储的数据的基本单位就是文档,
                MongoDB中存储的就是文档,所谓文档其实就是一个“JSON”
        - MongoDB中的“JSON”我们称为BSON,比普通的JSON的功能要更加的强大
        - MongoDB数据库使用的是JavaScript进行操作的,在MongoDB含有一个对ES标准实现的引擎,

        在MongoDB中所有ES中的语法中都可以使用

看一下具体操作:

- MongoDB的基本的指令
    - 启动服务器
        mongod --dbpath 路径 --port 端口号
        
    - 启动客户端
        mongo
    
- MongoDB的CRUD的操作           
    - 基本操作
        use 数据库//在没有创建的时候可以创建,创建了的就使用
            - 进入指定的数据库
        show dbs
            - 显示所有的数据库
        show collections
            - 显示数据库中所有的集合
        db
            - 显示当前所在的数据库
 
    - 向数据库中插入文档
        - db.<collection>(集合的名字).insert()
            - insert()可以向集合中插入一个或多个文档
        db.student.insert({"name":"zhangsan",age:18,genger:"男"});
        db.student.insert([
            {"name":"王五",age:25,gender:"man"},
            {"name":"赵六",age:26,gender:"woman"},
            {"name":"周七",age:27,gender:"woman"},
            {"name":"刘八",age:28,gender:"man"},
            {"name":"陈九",age:29,gender:"woman"},
        ]); 
        - db.collection.insertOne()
            - 向集合中插入一个文档
        - db.collection.insertMany()
            - 向集合中插入多个文档
            
    - 查询数据库中的文档
        - db.collection.find()
            - 可以根据指定条件从集合中查询所有符合条件的文档
                db.student.find({"name":"张三"});
            - 返回的是一个数组 
        - db.collection.findOne()
            - 查询第一个符合条件的文档
            - 返回的是一个对象
                db.student.findOne({age:28}).gender;
        - db.collection.find().count()
            - 查询符合条件的文档的数量
            
    - 修改数据库中的文档
        - db.collection.update()
            - 会修改、替换集合中的一个或多个文档
        根据条件修改:
            db.student.updateOne(
                {"_id":ObjectId("5e520584a7dc1d5a5eae0e5d")},
                {
                    $set: {"name":"张三",age:111,gender:"woman"}
                }
            );
        - db.collection.updateOne()
            - 修改集合中的一个文档
        - db.collection.updateMany()
            - 修改集合中的多个文档
        - db.collection.replaceOne()
            - 替换集合中的一个文档
            
    - 删除集合中的文档
        - db.collection.remove()
            - 删除集合中的一个或多个文档(默认删除多个)
        根据条件删除:
            db.student.updateOne(
                {"_id":ObjectId("5e520584a7dc1d5a5eae0e5d")},
                {
                    $unset: {"name":"zhangsan",age:121212,gender:"woman","address":"流沙河"}
                }
            );
        - db.collection.deleteOne()
            - 删除集合中的一个文档
            也可以写成:db.student.remove({age:2222},true)
        - db.collection.deleteMany()
            - 删除集合中的多个文档
        - 清空一个集合
            db.collection.remove({}),性能差
        - 删除一个集合
            db.collection.drop()
        - 删除一个数据库
            db.dropDatabase()
注:在MongDB中好多语法和JavaScript差不多
上一篇 下一篇

猜你喜欢

热点阅读