zoukankan      html  css  js  c++  java
  • MongoDB自动增长

        我们知道,MongoDB没有像SQL一样有自动增长的功能,如果需要实现ObjectId自动增长功能,我们可以通过编程的方式来实现。步骤如下:

    1. 创建一个集合用于存储自动增长的id的当前值,这里集合名称为'counters':

       db.createCollection("counters")

    2. 向counters中插入一个文档:

       db.counters.insert({_id:"productid",key_value:0})

    3. 创建Javascript函数(每次调用,counters集合中的'key_value'字段的值增加1,并返回增加后的值):

       function getNextKeyValue(keyName){

         var keyDocument = db.counters.findAndModify(

            {

               query:{_id: keyName},

               update: {$inc:{key_value:1}},

               new:true

            });

         return keyDocument.key_value;

       }

    4. 使用javascript函数实现自动增长:

       示例:

    db.products.insert({

       "_id":getNextKeyValue("productid"),

       "product_name":"Apple iPhone",

       "category":"mobiles"})

       这样就可以在Mongodb中简单实现和SQL一样的自动增长id了,实际上就是借助了一个中间集合来存放增长id的当前值,然后使用findAndModify()函数更新id值并返回更新后的值。

     

  • 相关阅读:
    服务器安装宝塔面板
    CentOS7操作SSH/SSHD服务(查看/启动/重启/自启)
    CentOS服务器升级Linux版本
    阿里云云服务器漏洞修复
    Linux服务器安装Docker
    服务器安装Nginx
    服务器端简单Demo
    实现博客内容折叠
    [转]珍惜时间,做好规划——致大学过半的你们
    【LeetCode】9. 回文数
  • 原文地址:https://www.cnblogs.com/wujuntian/p/5298943.html
Copyright © 2011-2022 走看看