oracle插入序号怎么从最大的开始增加

比如我数据库有10万条数据,id是1到10万,我又要插入1万条数据,怎么写可以让序号从100001开始,id不是主键也不是自增长序号,我就想问语句怎么写生成类似于自增长一... 比如我数据库有10万条数据,id是1到10万,我又要插入1万条数据,怎么写可以让序号从100001开始,id不是主键也不是自增长序号,我就想问语句怎么写生成类似于自增长一样的序号 展开
 我来答
百度网友e4b2715
2018-07-20 · TA获得超过191个赞
知道小有建树答主
回答量:313
采纳率:94%
帮助的人:126万
展开全部
如果没有必须累加1的要求,允许跳号的话,最好使用sequence, 没有性能问题。
可以在创建sequence的时候设定开始值就是100000,插入的时候用select sequenceName.Nextval 就可以自增长。
如果不采用这种方式,可以新建一张表存放当前ID的最大值,每次从这里取值,然后再update + 1. 记得需要for update锁表,以免并发时号码重复。不建议这种方式,性能比较差
更多追问追答
追问
表里面已经有数据了 ,创建不了序列,程序插入的时候都是一条一条的,max+1可以 ,我后台插入就不行了
追答
max+1的方法不好,如果数据量上去了会很慢
后台一样可以插入的,你把代码贴出来,估计写的有问题
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式