ALTER SEQUENCE 修改序列解决唯一约束冲突 unique constraint violated
背景
自增序列会遇到也会遇到唯一约束冲突吗?是的,最常见的情况就是数据迁移之后,导致数据最大值超过序列值。
软件开发中不遇到些出乎意料的问题,总感觉不太够劲。
修改序列(ALTER SEQUENCE)
用于修改序列的当前值、最大值、最小值、缓存长度等。我们以Oracle为例,语法如下图



我们要做的是修改序列的当前值,与当前字段的数据最大值做同步。好,我们先来查询一下当前序列当前值
SELECT seqname.CURRVAL FROM dual
OR
SELECT last_number
FROM user_sequences
WHERE sequence_name='seqname'
然后修改序列值,比如增加100
ALTER SEQUENCE seqname INCREMENT BY 100;
最后校验一下序列的nextval,一定要超过目前的数据最大值。
SELECT seqname.NEXTVAL FROM dual
参考资料
Oracle ALTER SEQUENCE:https://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_2011.htm
ALTER SEQUENCE 修改序列解决唯一约束冲突 unique constraint violated的更多相关文章
- Oracle 唯一 约束(unique constraint) 与 索引(index) 关系说明
一. 官网对Unique Constraints说明 http://download.oracle.com/docs/cd/E11882_01/server.112/e16508/datainte.h ...
- ORA-00001:unique constraint violated解决
转自:https://www.2cto.com/database/201211/172340.html ORA-00001:unique constraint violated解决 今天往数据库中插入 ...
- 如何在EF CodeFirst中使用唯一约束(Unique)
一直用EF Fluent Api 做MapConfiguration 所以遇到了唯一约束这个瓶颈 使用唯一约束的两种方式: 方式1 自定义唯一约束 [AttributeUsage(AttributeT ...
- mysql alter 增加修改表结构及约束
1) 加索引,添加时若未指定索引名,默认为字段名 mysql> alter table 表名 add index 索引名 (字段名1[,字段名2 …]); 例子: mysql> alt ...
- 解决xib约束冲突
I would recommend to debug and find which constraint is "the one you don't want". Suppose ...
- postgre alter命令修改字段
参考文档:https://www.yiibai.com/postgresql/postgresql_alter_command.html PostgreSQL ALTER TABLE命令用于添加,删除 ...
- 约束Constraints--主键约束、外键约束、唯一约束、检查约束、默认约束、NOT NULL约束、列约束与表约束、创建约束、删除约束
约束 Including Constraints 以下内容转自:https://www.cnblogs.com/wcl2017/p/7043939.html和http://blog.csdn.ne ...
- 约束4:唯一约束,Check约束和null
大家知道,关系型数据库的逻辑运算的结果是三值型的,TRUE,FALSE和UNKNOWN,特别是,NULL值和任何值都不相等,任何值和NULL的比较,返回的逻辑结果都是unknown.而NULL值在唯一 ...
- mybatis 批量保存,并且唯一约束
1.主键返回在insert配置中添加两个属性 useGeneratedKeys="true" keyProperty="id" 2.唯一约束冲突可以使用 ON ...
随机推荐
- 关于RESTFUL API 安全认证方式的一些总结
常用认证方式 在之前的文章REST API 安全设计指南与使用 AngularJS & NodeJS 实现基于 token 的认证应用两篇文章中,[译]web权限验证方法说明中也详细介绍,一般 ...
- Visual Studio Developer Assistant 3月新功能展示
Visual Studio Developer Assistant 3月添加了以下新功能: https://visualstudiogallery.msdn.microsoft.com/a116671 ...
- iOS UITableView中点击状态栏无法回滚到顶部
// When the user taps the status bar, the scroll view beneath the touch which is closest to the stat ...
- Lucene
Lucene 是apache软件基金会一个开放源代码的全文检索引擎工具包,是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎. Lucene的目的是为软件开发人员提供一个简单易 ...
- 《Web 开发基础》专题系列
说在前头 Web的重要性我想不必我多说了,写这篇文章的目的主要是想分享一些我学习Web前端开发的知识积累,其中以JavaScript为主,比较适合新人看,也欢迎大牛们多多留言提提意见. ...
- paip.java 线程无限wait的解决
paip.java 线程无限wait的解决 jprofl>threads>thread dump> 查看棉线程执行的code stack... 估计是.比如.BlockingQue ...
- Atitit.列表页面and条件查询的实现最佳实践(1)------设置查询条件and提交查询and返回json数据
Atitit.列表页面and条件查询的实现最佳实践(1)------设置查询条件and提交查询and返回json数据 1. 1. 配置条件字段@Conditional 1 1 2. 2. 配置条件字段 ...
- piwik流量统计系统搭建(apache2.4+piwik+mysql5.6+php5.6.14)
Piwik: 开放源代码的Web统计软件 Piwik是一个PHP和MySQL的开放源代码的Web统计软件. 它给你一些关于你的网站的实用统计报告,比如网页浏览人数, 访问最多的页面, 搜索引擎关键词等 ...
- BeginInvoke与EndInvoke方法解决多线程接收委托返回值问题
BeginInvoke与EndInvoke方法解决多线程接收委托返回值问题 原文:http://www.sufeinet.com/thread-3707-1-1.html 大家可以先看看我上 ...
- solr详解,开发必备
1.基础知识 创建索引的过程如下: (1).建立索引器IndexWriter,这相当于一本书的框架 (2).建立文档对象Document,这相当于一篇文章 (3).建立信息字段对象Field,这相当于 ...