zoukankan      html  css  js  c++  java
  • MonogDB初探增加和删除

    1.插入并保存文档      

      在插入数据之前,首先用mongodb Shell命令db.baseUser.find() 查找集合的数据。

           

         想必大家能猜到结果,什么东西都没有,那接着来说说怎么向 baseUser 集合中插入数据。插入baseUser 的方法如下: 

              

            首先定义一个baseUser变量,用来存放要插入的用户对象,其实很简单,然后调用文档对象的insert 方法来将文档插入。然后用命令db.baseUser.find()查看刚插入的数据。

         对于批量插入shell客户端不支持,单个文档保存数据库时,会有一个消息头,由这个消息头来告诉此数据要插入到哪个文档中,批量插入,会将多个文档一次性的插入数据库,插入速度回明显替提高。批

         量插入应用在程序中。

               注意:  

              1.mongodb 不需要预先创建一个集合,而是在插入第一条数据时自动创建集合.

                 2.文档中可以存储任何结构的数据,但是在实际应用中存储的还是相同的文档类型的结合。

                 3.每次插入数据时候集合中都活有一个ID,名称为  "_id".

                插入原理:

               MongodDB在执行插入式,首先将插入的数据转换为BSON格式,然后MongoDB会对BSON进行解析,并检查是否存才_id键,_id键在插入式会自动生成。mongoDB对文档大小做了限制,1.8之前的版本,文档大小不能超过4MB,1.8版本之后支持16MB。没有的数据校验,就是简单的将数据插入数据库,这样做的坏处是允许插入无效的数据。好处是不会受到注入式的攻击,更安全。另外不像关系型数据库那样有那么多的限制。

    2.删除文档

             在删除文档之前我们还是先调用db.baseUser.find()来查看当前集合中的文档数据。

                  

            可以看到有两条数据。要删除文档中的数据我们之需要调用db.baseUSre.remove() 方法来删除文档数据,执行完命令后的结果为:

                   

             调用mongoDB的db.baseUser.remove({"name":"lisi"}) 方法来删除name为李四的文档,删除数据需要传入一个对象参数,参数代表查询条件,匹配上的数据就会删除。

             注意:

                 remove()函数接受一个查询文档的可选参数,传入参数后,只有符号条件的数据被删除。如果什么参数都不传的情况下,当前文档的数据会被全部删除。但是,删除数据时永久性的不能恢复,重要的数据记得备份啊。

               db.baseUser.remove() :  不会删除集合本身,原有的索引也会保留

                db.baseUser.drop() :删除速度会变快,会把整个集合都删掉,所以索引也不会保留。小伙伴们这里像关系型数据的 drop table 啊

       

              我是刚写博客,看别人博客写的都比较漂亮啊,小伙伴们能否给推荐个比较好的博客插件。

     

  • 相关阅读:
    华为交换机端口安全
    华为路由交换命令收集
    Java使用JodaTime处理时间
    Java遍历Map对象的四种方式
    zabbix-2.4.8-1添加MySQL状态监控
    zabbix-2.4.8-1添加tcp状态监控
    zabbix-2.4.8-1添加nginx状态监控
    我的第四个Python小程序
    我的第三个Python小程序
    我的第二个Python小程序
  • 原文地址:https://www.cnblogs.com/qiaojie/p/4083927.html
Copyright © 2011-2022 走看看