热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

oracle中序列每隔一天就重新循环怎么弄?搜索

比如2017040100001,八位日期+5位数字,0401这天的序列排到了00999,第二天想让序列从2017040200001开始计算,该怎么创建这个序列
比如2017040100001,八位日期+5位数字,0401这天的序列排到了00999,第二天想让序列从2017040200001开始计算,该怎么创建这个序列

8 个解决方案

#1


maxvalue 选项,看看是否能满足你的需求;

#2


引用 1 楼 wmxcn2000 的回复:
maxvalue 选项,看看是否能满足你的需求;
不能吧。。。maxvalue 不是只能设置最大值吗,我需要的是根据日期来循环后五位数字

#3


0401这天的序列排到了00999 

如果在 0401 这天,到了 1000 ,也是从 1 开始吗? 还是接着 1000、1001、1002、1003 排,第二天才回归 1 ?

#4


引用 3 楼 wmxcn2000 的回复:
0401这天的序列排到了00999 

如果在 0401 这天,到了 1000 ,也是从 1 开始吗? 还是接着 1000、1001、1002、1003 排,第二天才回归 1 ?
在保证一天内不会超过9999的前提下

#5


序列不要有任何实际意义,有必要么?加其他字段来实现不好吗
平白加大控制的难度

#6


到了第二天drop序列后recreate?

#7


有规律性的初始化,那就别用序列了。最大值+1,很好控制

#8


引用 6 楼 u012557814 的回复:
到了第二天drop序列后recreate?




好办法,就是这种 DDL 操作会引起依赖对象失效;

推荐阅读
author-avatar
小丘
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有