84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
想用id(1-n)记录博客文章发表的次序,在网上查找到一个方法,通过增加一个sequence表,但是这种方法有个缺点,就是一旦其中某篇文章删除后,其他id不会改变,求更好的方法
业精于勤,荒于嬉;行成于思,毁于随。
您这种思路在MongoDB中估计比较难以实现。您这种思路源自在很多关系型数据库中提供了identity的计数器。
在MongoDB中,如果您需要对博客文章发表排序,是可以使用时间,或者其他的适合排序的"field"来进行排序的。
供参考。
Love Mongo! Have Fun!
-->戳我<--请戳左边,就在四月!赶紧报名吧!
MongoDB中文社区深圳用户大会开始报名啦!本论坛大神将在大会上隆重出台,发表演讲。此处有掌声!!!
没理解错的话,你这个要求无论什么数据库都做不到啊。假设我现在有10000篇博客,我删除了第一篇,你要把后面9999篇文章都重新生成ID?如果一共有100w篇博客该怎么办?所以这个思路本身是不正确的。如果要达到的目的只是记录文档发表的顺序,默认的_id使用ObjectId完全可以满足你的需求。ObjectId本身是递增的,排序即可。关于ObjectId我写过一篇博客介绍相关的知识,有兴趣请戳这里。
ObjectId
您这种思路在MongoDB中估计比较难以实现。您这种思路源自在很多关系型数据库中提供了identity的计数器。
在MongoDB中,如果您需要对博客文章发表排序,是可以使用时间,或者其他的适合排序的"field"来进行排序的。
供参考。
Love Mongo! Have Fun!
-->戳我<--请戳左边,就在四月!赶紧报名吧!
MongoDB中文社区深圳用户大会开始报名啦!本论坛大神将在大会上隆重出台,发表演讲。此处有掌声!!!
没理解错的话,你这个要求无论什么数据库都做不到啊。假设我现在有10000篇博客,我删除了第一篇,你要把后面9999篇文章都重新生成ID?如果一共有100w篇博客该怎么办?所以这个思路本身是不正确的。
如果要达到的目的只是记录文档发表的顺序,默认的_id使用
ObjectId
完全可以满足你的需求。ObjectId
本身是递增的,排序即可。关于ObjectId我写过一篇博客介绍相关的知识,有兴趣请戳这里。