Activiti相关数据库表定义了很多外键,在自定义驳回、收回操作时,很容易出现外键引起的操作失败,亲测有两种方法解决:
1、临时关闭外键约束
1.1 操作开始前执行SET FOREIGN_KEY_CHECKS=0;
关闭外键约束
1.2 操作完成后执行SET FOREIGN_KEY_CHECKS=1;
开启外键约束
2、删除Activiti相关表外键
ALTER TABLE ACT_GE_BYTEARRAY DROP FOREIGN KEY `ACT_FK_BYTEARR_DEPL`;
ALTER TABLE ACT_PROCDEF_INFO DROP FOREIGN KEY `ACT_FK_INFO_JSON_BA`;
ALTER TABLE ACT_PROCDEF_INFO DROP FOREIGN KEY `ACT_FK_INFO_PROCDEF`;
ALTER TABLE ACT_RE_MODEL DROP FOREIGN KEY `ACT_FK_MODEL_DEPLOYMENT`;
ALTER TABLE ACT_RE_MODEL DROP FOREIGN KEY `ACT_FK_MODEL_SOURCE`;
ALTER TABLE ACT_RE_MODEL DROP FOREIGN KEY `ACT_FK_MODEL_SOURCE_EXTRA`;
ALTER TABLE ACT_RU_DEADLETTER_JOB DROP FOREIGN KEY `ACT_FK_DEADLETTER_JOB_EXCEPTION`;
ALTER TABLE ACT_RU_DEADLETTER_JOB DROP FOREIGN KEY `ACT_FK_DEADLETTER_JOB_EXECUTION`;
ALTER TABLE ACT_RU_DEADLETTER_JOB DROP FOREIGN KEY `ACT_FK_DEADLETTER_JOB_PROCESS_INSTANCE`;
ALTER TABLE ACT_RU_DEADLETTER_JOB DROP FOREIGN KEY `ACT_FK_DEADLETTER_JOB_PROC_DEF`;
ALTER TABLE ACT_RU_EVENT_SUBSCR DROP FOREIGN KEY `ACT_FK_EVENT_EXEC`;
ALTER TABLE ACT_RU_EXECUTION DROP FOREIGN KEY `ACT_FK_EXE_PARENT`;
ALTER TABLE ACT_RU_EXECUTION DROP FOREIGN KEY `ACT_FK_EXE_PROCDEF`;
ALTER TABLE ACT_RU_EXECUTION DROP FOREIGN KEY `ACT_FK_EXE_PROCINST`;
ALTER TABLE ACT_RU_EXECUTION DROP FOREIGN KEY `ACT_FK_EXE_SUPER`;
ALTER TABLE ACT_RU_IDENTITYLINK DROP FOREIGN KEY `ACT_FK_ATHRZ_PROCEDEF`;
ALTER TABLE ACT_RU_IDENTITYLINK DROP FOREIGN KEY `ACT_FK_IDL_PROCINST`;
ALTER TABLE ACT_RU_IDENTITYLINK DROP FOREIGN KEY `ACT_FK_TSKASS_TASK`;
ALTER TABLE ACT_RU_JOB DROP FOREIGN KEY `ACT_FK_JOB_EXCEPTION`;
ALTER TABLE ACT_RU_JOB DROP FOREIGN KEY `ACT_FK_JOB_EXECUTION`;
ALTER TABLE ACT_RU_JOB DROP FOREIGN KEY `ACT_FK_JOB_PROCESS_INSTANCE`;
ALTER TABLE ACT_RU_JOB DROP FOREIGN KEY `ACT_FK_JOB_PROC_DEF`;
ALTER TABLE ACT_RU_SUSPENDED_JOB DROP FOREIGN KEY `ACT_FK_SUSPENDED_JOB_EXCEPTION`;
ALTER TABLE ACT_RU_SUSPENDED_JOB DROP FOREIGN KEY `ACT_FK_SUSPENDED_JOB_EXECUTION`;
ALTER TABLE ACT_RU_SUSPENDED_JOB DROP FOREIGN KEY `ACT_FK_SUSPENDED_JOB_PROCESS_INSTANCE`;
ALTER TABLE ACT_RU_SUSPENDED_JOB DROP FOREIGN KEY `ACT_FK_SUSPENDED_JOB_PROC_DEF`;
ALTER TABLE ACT_RU_TASK DROP FOREIGN KEY `ACT_FK_TASK_EXE`;
ALTER TABLE ACT_RU_TASK DROP FOREIGN KEY `ACT_FK_TASK_PROCDEF`;
ALTER TABLE ACT_RU_TASK DROP FOREIGN KEY `ACT_FK_TASK_PROCINST`;
ALTER TABLE ACT_RU_TIMER_JOB DROP FOREIGN KEY `ACT_FK_TIMER_JOB_EXCEPTION`;
ALTER TABLE ACT_RU_TIMER_JOB DROP FOREIGN KEY `ACT_FK_TIMER_JOB_EXECUTION`;
ALTER TABLE ACT_RU_TIMER_JOB DROP FOREIGN KEY `ACT_FK_TIMER_JOB_PROCESS_INSTANCE`;
ALTER TABLE ACT_RU_TIMER_JOB DROP FOREIGN KEY `ACT_FK_TIMER_JOB_PROC_DEF`;
ALTER TABLE ACT_RU_VARIABLE DROP FOREIGN KEY `ACT_FK_VAR_BYTEARRAY`;
ALTER TABLE ACT_RU_VARIABLE DROP FOREIGN KEY `ACT_FK_VAR_EXE`;
ALTER TABLE ACT_RU_VARIABLE DROP FOREIGN KEY `ACT_FK_VAR_PROCINST`;
标签:删除,Activiti,DROP,外键,FOREIGN,KEY,ACT,FK,ALTER
From: https://www.cnblogs.com/byteexpress/p/18321818