控制台报错违反唯一约束条件

执行到此方法,我用断点跟着程序走,走到return那一步就报了违反唯一约束条件,求大神指点迷津!
public ActionForward submitPlan(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
UserProfile currentUser = getCurrentUser(request);
SparePlanForm sparePlanForm = (SparePlanForm) form;
ActionMessages messages = new ActionMessages();
try {
SparePlanMainDTO planMain = sparePlanForm.getPlanMain();
planService.updatePlanMain(planMain);
String messStr = planService.submitPlanMain(planMain.getId(), planMain.getTaskJson(), currentUser);
if (StringUtils.isBlank(messStr)) {
planMain = planService.findPlanMain(planMain.getId());
String operContent = "提交" + planMain.getPlanTypeName() + "申请单,申请单编号:" + planMain.getDocCode();
logInfoDAO.logContent(request, 1403, operContent);
messages.add("promptMess", new ActionMessage("计划申请单提交成功", false));
List list = workflowService.queryCurrentTaskUserList(planMain.getProcessInstanceId(), planMain.getId(), 140303);
for (int i = 0; i < list.size(); i++) {
// 王金良您好,现有玉溪卷烟厂正常件计划申请单据需要您的审批,请尽快办理。
String mess = list.get(i).getName() + "您好,现在" + planMain.getOrgName() + planMain.getPlanTypeName() + "计划申请单[" + planMain.getDocCode().trim() + "]需要您的审批,请尽快办理。";
SMS.sendSms(list.get(i).getCode(), mess, list.get(i).getMobile(), OperationType.SPARE_APPLYY_PLAN, 140303);
}
} else {
messages.add("alertMess", new ActionMessage(messStr, false));
}
this.addMessages(request, messages);

    } catch (Exception e) {
        logger.error(e.getStackTrace()[0].getMethodName() + "\r\n" + e.getMessage(), e);
        e.printStackTrace();
    }
    return toEditPlan(mapping, sparePlanForm, request, response);
}

问题背景:我做的是维护,这个系统用struts1写的,用到了activity工作流,领导要求我把审批人第四个人换到第二个人审批,总共有六个人审批。换了后,原本第二个审批的换到了第三个,第三个换到第四个,第四个换到了第二个,其他的不变。数据库有个模板,我改掉了数据库模板中这三条数据的位置。
注:原本没改之前模板中的第四条数据和第六条是一样的!

2个回答

要求:图片说明图片说明

图片说明

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
oracle插入数据报ORA-00001:违反唯一约束条件

oracle插入数据报ORA-00001:违反唯一约束条件

没有重复的数据在insert 时:ORA-00001:违反唯一约束条件

这里只说这个的一种特殊的情况。首先要明确的是在插入数据时报这个错误,证明表真的是存在对检查的数据有不唯一的存在。 但是在你检查你的主键并用做group by XXX having count(*)>1 ,这个检查时你会发现没有重复的数据,这就头大了。 在pl/sql dev工具中检查了好久,发现在表下面的Referenced by目录和check constraint目录的信息不相似,看了一下

ORA-00001: 违反唯一约束条件 --解决方法

1、错误 Caused by: java.sql.BatchUpdateException:ORA-00001: 违反唯一约束条件 (SOLEX.SYS_C0012537) 2、分析 ①(SOLEX.SYS_C0012537)是我们在数据库设置的约束条件的name,一般是主键ID约束 ②同hbm.xml文件找到主键的自增序列名称 SEQ_FEEPAY_COST_

oracle数据库出现“批处理中出现错误: ORA-00001: 违反唯一约束条件”解决方法

最近使用oraclede impdp工具全库导入数据库时,在数据库里面使用出现如下情况。 SQL state [null]; error code [17081]; 批处理中出现错误: ORA-00001: 违反唯一约束条件 (GDXAORCL.SYS_C0055359) ; nested exception is java.sql.BatchUpdateException: 批处理中出现错

违反唯一约束条件

违反唯一约束条件 违反唯一约束条件 (LIS01.PK_LWMISSION) 找到LWMISSION表,删除数据。

GIS编辑中出现ORA-00001:违反唯一约束条件

http://note.youdao.com/share/?id=120c0f65a9af78603640de23f049affa&type=note

ORA-00001: 违反唯一约束条件

 如何查出违反唯一关键子的类似SQLERRM有个过程 每天更新用户信息表原本采用MERGE 来做的,可是有人嫌它慢,建议采用DELETE INSERT来做我先 delete userinfo wehre logtime > trunc(sysdate)-15 ; commit;   insert into userinfo    select * from  t_cac

PL/SQL插入记录:ORA-00001:违反唯一约束条件

今天使用PL/SQL对表进行数据插入,插入的方法是: 1.    select max(pkid) from TBOP_01MATERIAL;//得出pkid为139018 2.    查看表TBOP_01MATERIAL的表结构,仅pkid为主键 3.    让pkid为139019,插入一条新记录,提示ora-00001。到此为止让人很郁闷,莫名其妙不知所谓 4.    查找表TBOP

oracle更新表数据时,提示"违反唯一约束条件",如何找到不能更新的数据

oracle数据库,pl/sql工具,最近在用update语句批量更新时,发现更新报错,提示"违反唯一约束条件",如何找到更新出错的数据呢?此处做个记录: update语句为:  update wmwhse2.lotattribute t1 set t1.lottable02='MB1'   where t1.lot in (select  lot from wmwhse2.lotattrib

Oracle:ORA-00001 违反唯一约束条件

1、  DROP SEQUENCE a_fault_info_SEQ;     2、create sequence a_fault_info_SEQ        minvalue 1000        maxvalue 999999999999999999999999999        start with 1        increment by 1        cache

ORA-00001: 违反唯一约束条件 的发送场景与解决方案?

http://stackoverflow.com/questions/11296361/how-to-create-id-with-auto-increment-on-oracle     第一, 如果不是primary key id duplicated,那么只能说这个记录确实已经存在了; 第二,如果是主键冲突,那么情况就多了: 主键是String类型的, 这个必然

Hibernate ORA-02292: 违反完整约束条件 已找到子记录 报错解决方法

        在执行oracal数据库数据删除时出现此错误提示,错误的意思是:您在没有删除子表记录的情况下,删除主表记录,触发了完整性约束错误。        解决方法: 在Hibernate 注解中使用CascadeType: cascade(级联)        级联在编写触发器时经常用到,触发器的作用是当 主控表信息改变时,用来保证其关联表中数据同步更新。若对触发器来修改或删除关联表相记录...

解决问题:SqlExceptionHelper:129 - ORA-00001: 违反唯一约束条件 (CRM.SYS_C007084)

ERROR SqlExceptionHelper:129 - ORA-00001: 违反唯一约束条件 (CRM.SYS_C007084)出现个异常的原因其实就是oracle数据库的序列出了问题,oracle数据库本身默认主键id不自动增长,如果新插入的数据的id在数据库中已经被占用就会出现此类异常,此时仅需要修改数据库的序列即可解决问题。方法步骤:Hibernate: select hiberna...

关于oracle表已设置主键自增仍报违反唯一约束问题

今天在写一个表维护页面时,表里已设置sequence 但是保存时仍报违反主键唯一约束的错误,经过排查,原来在表创建好的时候,由数据库直接导入了部分数据,导致了sequence的开始自增序列不为当前ID最大值,故要从新设置sequence的自增起始值,方法如下: 第一步:删除原有的sequence,如下:DROP SEQUENCE seq_sequencename;第二步: 重新创建sequence并

Oracle数据库报违反唯一约束的问题

今天做项目时往表中插入数据竟然出问题了,数据库报违反唯一约束,问题解决很简单:项目用的是oracle数据库,前期为了调试我手动在这张表中插入了八条记录,而正是这八条记录造成了插入失败,由于采用了sequence的主键生成策略,所以手动插入的数据并没有被sequence所计算。解决方式:因为数据库中是8条记录,所以在界面连续插入了8次以后,从第九次开始就没问题了。或者把数据库中数据删掉。s

oracle违反唯一约束的错误

在执行update的时候,提示违反唯一约束,要跟新的语句中没有重复的记录,原因是已存在的记录与更新后的记录冲突,导致了提示

系统提示java.sql.SQLIntegrityConstraintViolationException: ORA-00001: 违反唯一约束条件

在本地测试系统,发现插入语句老是报错, java.sql.SQLIntegrityConstraintViolationException: ORA-00001: 违反唯一约束条件原因是把oracle正式库导回到本地的时候,没有导入序列(插入id的值依靠这个序列),导致一直不能插入。修改: 先查看序列当前值,在Oracle SQL Developer中序列找到当前用的序列,查看序列中信息,修改当

oracle主键自动增长的实现 Oracle Sequence oracle maxid自动生成--ORA-00001: 违反唯一约束条件 (NAME.SYS_C005547)产生的原因之一(select * from all_cons_columns w

<br />oracle中的int类型不像sqlserver那样可以设置自动增长,一般在程序中我们会用select max(id) 来取最大ID,但这样不仅效率低 而且在操作比较频繁的程序中还会出现插入相同id的情况。maxid是得到最大ID 然后当做ID来插入,从得到ID到插入数据是有时间差的(虽然很小很小),在这个时间差内如果有另外一个相同操作,那么得到的maxid就是一样的 就会报错。所以在操作频繁的程序中 这种取最大ID的方法是错误的。另外 用sequence取到的值最大是9999999999999

关于触发器对扩展表插入操作引发的违反主键的唯一约束条件

今天在写了一个行级update触发器,对表进行插入的时,触发触发器对扩展表做插入操作。遇到的问题不是一般的多。 1)在触发器的匿名块部分中用了 insert into tab_a(col_a1)  select col_b1 from tab_b  where col_b1= :new.col_b1; tab_a为触发器的扩展表,tab_a为触发器的作用表。触发器写完之后,执行成功,然后执行:

oracle 中 MERGE INTO 使用时注意唯一约束冲突

MERGE INTO 使用时注意唯一冲突 1 用处:当需要对大量数据做“有则更新,无则插入”时,可以用到 (具体使用可参考链接http://space.itpub.net/25313300/viewspace-700222) 2 语法结构:     MERGE INTO TAB_target t     USING (SELECT         s.*         from T

Oracle 在高并发的情况下,插入主键ID时,报:违反唯一约束条件

今天,在自己初出茅庐做项目时遇到急需处理情况,那就是在多人同时提交数据时,插入ID时,报错:违反唯一约束条件。我之前处理ID方法是采用ID+1 查询 再插入的方法,这种情况配合事务时就会报错。解决方法,采用序列方法插入。当然,数据库也可以使用触发器来自己插入ID。具体方法,看实际情况使用...

java.sql.SQLIntegrityConstraintViolationException: ORA-00001: 违反唯一约束条件

Error updating database.  Cause: java.sql.SQLIntegrityConstraintViolationException: ORA-00001: 违反唯一约束条件 (JDDS.PK_SHOP_MESSAGE)### The error may involve com.shop.dao.itf.MessageMapper.insert-Inline### ...

oracle ORA-00001 违反唯一约束条件 SYS_C009225问题

我添加了脚本如下: create sequence mvc_user_seq increment by 11 start with 11  minvalue 11 maxvalue 9999999999999 nocache  order; create or replace trigger mvc_user_trigger before insert on mvc_user fo

数据库违反唯一约束错误

org.springframework.dao.DuplicateKeyException:  ### Error updating database.  Cause: java.sql.SQLIntegrityConstraintViolationException: ORA-00001: 违反唯一约束条件 (HISTEST.idx_treatment_card_no)找到那个字段违反约束条

Hibernate中使用了序列给主键自动增长,但是添加记录到数据库时报违反唯一性约束??

今天碰到了这个问题,本来以为做一个不带主键的构造方法即可解决问题?后来发现在Hibernate中,要添加记录到数据是跟xxx.hbm.xml息息相关的。       最后在网上找到解决方法,解决这个问题我们需要再将序列也一并引入xxx.hbm.xml中,如下所示,USERS_SEQUENCE为你的序列名称。

捕获“ORA-00001: 违反唯一约束条件”异常并抛出业务相关的错误信息

http://my.oschina.net/u/213148/blog/180202 1.背景:T表F字段唯一索引,保存F字段重复的数据后台异常(附后),不做处理MVC框架包装异常后,前台显示"Could not execute JDBC batch update; nested exception is org.hibernate.exception…“,报错信息不友好,故

Oracle ora-00001 违反唯一索引

<br />错误代码:ora-00001,违反唯一索引;<br />因为这一列是主键,所以这一列的数据是不可以为空或重复.

违反唯一约束

今天执行SQL语句的时候,遇到了“违反唯一约束”的错误,找了半天,才发现问题所在。 通常遇到这个问题是在执行表的插入的时候遇到的。  建表语句如下: CREATE TABLE dbo.scheduletable (     scheduleid numeric(9,0) NOT NULL,     agentid    varchar(32)  NOT NULL,     agen

当删除数据库数据时,提示违反约束条件‘SYS_C007903’ 时,相关办法。oracle查询约束

select * from dba_constraints where constraint_name = 'SYS_C007903'注:dba_constraints  是查询约束的表格。constraint_name = 'SYS_C007903'是,我在进行某一表提示的错误:‘违反约束条件SYS_C007903’,原因是在这里面设置的不是级联删除。在这个查询结果显示的红框里,就是关联的表格了...

Oracle错误表

ORACLE错误一览表,方便大家查询! ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程;无法转换会话 ORA-00022: 无效的会话 ID;访问被拒绝 ORA-0

odi接口抽取数据报错提示Create Unique Index on flow table创建唯一索引失败解决方法

错误代码: create unique index  USR_DATAI.I$_T_JWJK_JX_KCAP_idx on USR_DATAI.I$_T_JWJK_JX_KCAP () NOLOGGING  错误原因: 1.数据源有重复数据,根据复合主键查询的时候一定要检查是否可以区分是唯一数据 2.在创建接口的时候没有选键设置导致,如果是唯

【终结:Oracle用一次忘一次】 ORA-02290: 违反检查约束条件 (SXEQDB.SYS_C007265)

数据库中该字段已经设置可为空,但插入的时候还是出现这个错误,最后把Check constraints中该字段关了(disable)就可以了。

oracle数据库主键约束删除之后依然报错ORA-00001: unique constraint(违反唯一约束)

问题再现问题描述在oracle数据库中明明主键已经删除了,但是插入数据的时候还是报错违反唯一约束解决方案引起该现象的原因是因为当先创建唯一约束后再创建主键约束的情况下,如果使用普通方法删除主键约束后,唯一约束索引不会被删除。 解决的方法是需要删除唯一索引 drop index [索引名]问题详细描述连接http://blog.itpub.net/519536/viewspace-628313/

违反唯一约束条件怎么解决,求各位大神帮忙

-

Oracle数据库---------------------------约束的创建与管理(唯一约束)

关于Oracle数据库的学习记录:三十七、约束的创建与管理(唯一约束)唯一约束(UNIQUE,NK)如果说现在数据表的某一个列的内容不允许重复,例如:每一个用户都有自己的email地址,email地址不允许重复,那么就使用UNIQUE进行声明范例:编写数据库脚本DROP TABLE member PURGE;CREATE TABLE member(    mid       NUMBER,    ...

ORA 各种oraclesql错误

ORA-00001: 违反唯一约束条件 (.)  ORA-00017: 请求会话以设置跟踪事件  ORA-00018: 超出最大会话数  ORA-00019: 超出最大会话许可数  ORA-00020: 超出最大进程数 ()  ORA-00021: 会话附属于其它某些进程;无法转换会话  ORA-00022: 无效的会话 ID;访问被拒绝  ORA-00023: 会话引用进程私用内存

ORA-02291: 违反完整约束条件 (CLMDATA.FK_XXX_XXX) - 未找到父项关键字

org.springframework.dao.DataIntegrityViolationException: Could not execute JDBC batch update; nested exception is org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch upd

powerdesigner约束名唯一出错的解决办法

powerdesigner中自动生成的约束名有时会因为表的前缀一样而不具有唯一性,这样在生成时就会出错,一般的解决办法有以下两种: 1、模型=>Reference中可以看到当前模型中的所有Reference的List,找到重名并修改; 2、在空白处右键->检查模型(F4),powerdesigner将自动为你进行模型检查,在出错的信息列表上右健->自动更正即可。 PS:生成数据库时,有一个C

ORA-02290: 违反检查约束条件 (MES_V1.SYS_C0027075)原因以及解决方法

今天再插入数据时    oracle数据库报错 ORA-02290: 违反检查约束条件 (MES_V1.SYS_C0027075) 发现是其中一个字段不能为空  在设计表中修改该字段不能为空后发现还是报错 原因  oracle数据库在修改约束条件后  还需要在检查选项卡中修改检查选项 MES_V1.SYS_C0027075  对应检查的序号

ODI导入功能失败:违反唯一索引AK_SNP_GRP_STATE

使用ODI导出存储库,然后导入时,会出现如下错误引起此问题的原因是字符集问题,导出存储库时提示字符集,如下图,默认字符集不支持中文,导致汉字变为”?”,导致引起唯一索引错误解决办法,导出时要设置相应的支持中文的字符集,例如UTF-8 本文转自:http://www.itjaj.com/viewthread.php?tid=3701&extra=page%3D1%26amp%3Bfilter

Oracle ORA-02292: 违反完整约束条件 (UNITELE.TA_SUB_REFERENCE3) - 已找到子记录

A表被B表引用,删除A表的时候提示ORA-02292,A表的主键被引用了,虽然已经把B表的数据全部删除掉,但仍然删除不了A表的数据。 解决办法: 用禁用约束语句把A表的主键约束给禁用掉。 1、禁用约束:alter table 表名 disable constraint 主键   CASCADE 2、删除A表的数据 3、启用约束:alter table 表名 enable constrai

手动批量处理 “ORA-02292: 违反完整约束条件 - 已找到子记录”

我们通常会在Hibernate中设置好父表与子表的对应关系,并可实现在没有on delete cascade前提下,删除父表时,自动删除子表信息。         但是:如果我们真遇到需要手动处理一些例如“删除某个订单汇总及明细”的需求,而我们不可能去在应用层面增加删除功能。那我们在直接删除汇总时,会遇到“ORA-02292: 违反完整约束条件 - 已找到子记录”。最简单的情形下,我们倒是可以先

oracle中插入数据出现错误:ORA-02291: 违反完整约束条件 (SCOTT.FK_SX9MLJB8T3FWB40GVCSKHYSYT)- 未找到父项关键字

总体说说可能出现的原因: 情况场景: 表A中有个字段是外键,关联了表B中的某字段,再往表A插入数据时,会出现这种情况。 可能原因: 1. 插入的数据 如果某个字段是外键 那么该值要么为空 要么在主键表中 有对应的主键值否则 就不满足参照完整性约束   所以你肯定插入了 不存在的主键值 所以产生了这个错误 eg.创建A表 创建B表 向A表插入数据

oracle 11g ORA-02291: 违反完整约束条件 - 未找到父项关键字

用纯文字的方法来叙述: 假如有两张表: A表: 组ID(主键), 姓名 B表: 用户ID,姓名,组ID(外键) 那么在B中插入(1.'小明',1)的时候,如果A表里没有组号1,那么就会爆出ORA-02291: 违反完整约束条件 - 未找到父项关键字的错误。

Oracle报错:“ORA-02292:违反完整约束条件(XXX.FKXXX)- 已找到子记录

删除表A的记录时,Oracle 报错:“ORA-02292:违反完整约束条件(XXX.XXX)- 已找到子记录

ORA-02291: 违反完整约束条件 - 未找到父项关键字

总体说说可能出现的原因: 情况场景: 表A中有个字段是外键,关联了表B中的某字段,再往表A插入数据时,会出现这种情况。 可能原因: 1. 插入的数据 如果某个字段是外键 那么该值要么为空 要么在主键表中 有对应的主键值 否则 就不满足参照完整性约束 所以你肯定插入了 不存在的主键值 所以产生了这个错误   eg.创建A表 创

执行批量插入语句报ORA-00001

解决mybatis执行批量插入语句时报ORA-00001

BI数据分析方法小结

author:skatetime:2011-04-06  对于电子商务网站,我们该如何对数据分析呢?当我们拿到数据的时候该做些什么?要回答这几个问题前,先回答如下问题:1.       数据是给谁看的?  2.       看数据的人,想从数据中得到什么?或者用数据证明什么? 

JBPM4.3&nbsp;自由流的实现

JBPM4.3 自由流的实现,需要的参数只有taskid   注明:instanceid为相对核心参数,建议在流程发起的时候保留 本流目标节点已知(已知条件为自由流使用过程中的常态),没有当作参数传,写死在码里了。 大家可以当作参数传进来 本函数的参数为Java的一个bean其中只适用到了其中getTaskid() 的方法,获取的值不言而喻! public void returnTask(Wo

oracle约束学习(1)unique和check

有人说,没有索引, 拿什么来保证约束?姑且不论这话的对错,但约束的实现(除了not null),很多都是通过索引来快速定位约束的地方。unique约束会自动建立索引,pk也是。也因此,约束的很多问题总是和索引缠绵一起。       相关视图:               dba_constraints               dba_cons_columns       not n

相关热词 c#框体中的退出函数 c# 按钮透明背景 c# idl 混编出错 c#在位置0处没有任何行 c# 循环给数组插入数据 c# 多线程死锁的例子 c# 钉钉读取员工排班 c# label 不显示 c#裁剪影像 c#工作进程更新ui
立即提问