工作流JBPM系统数据库表介绍

2024-04-18 15:44

本文主要是介绍工作流JBPM系统数据库表介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

      • ☃️4.1 建表
      • ☃️4.2 数据库逻辑关系
        • 4.2.1 资源库与运行时的表
        • 4.2.2 历史数据表
      • ☃️4.3 表结构
      • ☃️4.4 流程操作与数表交互说明


在这里插入图片描述

☃️4.1 建表

该系统自带18张表,用于支撑该系统的逻辑与流程业务;

建表语句如下:

create database jbpmdb;
use jbpmdb;DROP TABLE IF EXISTS `jbpm4_deployment`;
CREATE TABLE IF NOT EXISTS `jbpm4_deployment` (`DBID_` bigint(20) NOT NULL,`NAME_` longtext,`TIMESTAMP_` bigint(20) DEFAULT NULL,`STATE_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_deployprop`;
CREATE TABLE IF NOT EXISTS `jbpm4_deployprop` (`DBID_` bigint(20) NOT NULL,`DEPLOYMENT_` bigint(20) DEFAULT NULL,`OBJNAME_` varchar(255) DEFAULT NULL,`KEY_` varchar(255) DEFAULT NULL,`STRINGVAL_` varchar(255) DEFAULT NULL,`LONGVAL_` bigint(20) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_DEPLPROP_DEPL` (`DEPLOYMENT_`),KEY `FK_DEPLPROP_DEPL` (`DEPLOYMENT_`),CONSTRAINT `FK_DEPLPROP_DEPL` FOREIGN KEY (`DEPLOYMENT_`) REFERENCES `jbpm4_deployment` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_execution`;
CREATE TABLE IF NOT EXISTS `jbpm4_execution` (`DBID_` bigint(20) NOT NULL,`CLASS_` varchar(255) NOT NULL,`DBVERSION_` int(11) NOT NULL,`ACTIVITYNAME_` varchar(255) DEFAULT NULL,`PROCDEFID_` varchar(255) DEFAULT NULL,`HASVARS_` bit(1) DEFAULT NULL,`NAME_` varchar(255) DEFAULT NULL,`KEY_` varchar(255) DEFAULT NULL,`ID_` varchar(255) DEFAULT NULL,`STATE_` varchar(255) DEFAULT NULL,`SUSPHISTSTATE_` varchar(255) DEFAULT NULL,`PRIORITY_` int(11) DEFAULT NULL,`HISACTINST_` bigint(20) DEFAULT NULL,`PARENT_` bigint(20) DEFAULT NULL,`INSTANCE_` bigint(20) DEFAULT NULL,`SUPEREXEC_` bigint(20) DEFAULT NULL,`SUBPROCINST_` bigint(20) DEFAULT NULL,`PARENT_IDX_` int(11) DEFAULT NULL,PRIMARY KEY (`DBID_`),UNIQUE KEY `ID_` (`ID_`),KEY `IDX_EXEC_SUPEREXEC` (`SUPEREXEC_`),KEY `IDX_EXEC_INSTANCE` (`INSTANCE_`),KEY `IDX_EXEC_SUBPI` (`SUBPROCINST_`),KEY `IDX_EXEC_PARENT` (`PARENT_`),KEY `FK_EXEC_PARENT` (`PARENT_`),KEY `FK_EXEC_SUBPI` (`SUBPROCINST_`),KEY `FK_EXEC_INSTANCE` (`INSTANCE_`),KEY `FK_EXEC_SUPEREXEC` (`SUPEREXEC_`),CONSTRAINT `FK_EXEC_INSTANCE` FOREIGN KEY (`INSTANCE_`) REFERENCES `jbpm4_execution` (`DBID_`),CONSTRAINT `FK_EXEC_PARENT` FOREIGN KEY (`PARENT_`) REFERENCES `jbpm4_execution` (`DBID_`),CONSTRAINT `FK_EXEC_SUBPI` FOREIGN KEY (`SUBPROCINST_`) REFERENCES `jbpm4_execution` (`DBID_`),CONSTRAINT `FK_EXEC_SUPEREXEC` FOREIGN KEY (`SUPEREXEC_`) REFERENCES `jbpm4_execution` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_hist_actinst`;
CREATE TABLE IF NOT EXISTS `jbpm4_hist_actinst` (`DBID_` bigint(20) NOT NULL,`CLASS_` varchar(255) NOT NULL,`DBVERSION_` int(11) NOT NULL,`HPROCI_` bigint(20) DEFAULT NULL,`engine_` varchar(255) DEFAULT NULL,`EXECUTION_` varchar(255) DEFAULT NULL,`ACTIVITY_NAME_` varchar(255) DEFAULT NULL,`START_` datetime DEFAULT NULL,`END_` datetime DEFAULT NULL,`DURATION_` bigint(20) DEFAULT NULL,`TRANSITION_` varchar(255) DEFAULT NULL,`NEXTIDX_` int(11) DEFAULT NULL,`HTASK_` bigint(20) DEFAULT NULL,`TYPE_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_HACTI_HPROCI` (`HPROCI_`),KEY `IDX_HTI_HTASK` (`HTASK_`),KEY `FK_HACTI_HPROCI` (`HPROCI_`),KEY `FK_HTI_HTASK` (`HTASK_`),CONSTRAINT `FK_HACTI_HPROCI` FOREIGN KEY (`HPROCI_`) REFERENCES `jbpm4_hist_procinst` (`DBID_`),CONSTRAINT `FK_HTI_HTASK` FOREIGN KEY (`HTASK_`) REFERENCES `jbpm4_hist_task` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_hist_detail`;
CREATE TABLE IF NOT EXISTS `jbpm4_hist_detail` (`DBID_` bigint(20) NOT NULL,`CLASS_` varchar(255) NOT NULL,`DBVERSION_` int(11) NOT NULL,`USERID_` varchar(255) DEFAULT NULL,`TIME_` datetime DEFAULT NULL,`HPROCI_` bigint(20) DEFAULT NULL,`HPROCIIDX_` int(11) DEFAULT NULL,`HACTI_` bigint(20) DEFAULT NULL,`HACTIIDX_` int(11) DEFAULT NULL,`HTASK_` bigint(20) DEFAULT NULL,`HTASKIDX_` int(11) DEFAULT NULL,`HVAR_` bigint(20) DEFAULT NULL,`HVARIDX_` int(11) DEFAULT NULL,`MESSAGE_` longtext,`OLD_STR_` varchar(255) DEFAULT NULL,`NEW_STR_` varchar(255) DEFAULT NULL,`OLD_INT_` int(11) DEFAULT NULL,`NEW_INT_` int(11) DEFAULT NULL,`OLD_TIME_` datetime DEFAULT NULL,`NEW_TIME_` datetime DEFAULT NULL,`PARENT_` bigint(20) DEFAULT NULL,`PARENT_IDX_` int(11) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_HDET_HACTI` (`HACTI_`),KEY `IDX_HDET_HPROCI` (`HPROCI_`),KEY `IDX_HDET_HVAR` (`HVAR_`),KEY `IDX_HDET_HTASK` (`HTASK_`),KEY `FK_HDETAIL_HPROCI` (`HPROCI_`),KEY `FK_HDETAIL_HACTI` (`HACTI_`),KEY `FK_HDETAIL_HTASK` (`HTASK_`),KEY `FK_HDETAIL_HVAR` (`HVAR_`),CONSTRAINT `FK_HDETAIL_HACTI` FOREIGN KEY (`HACTI_`) REFERENCES `jbpm4_hist_actinst` (`DBID_`),CONSTRAINT `FK_HDETAIL_HPROCI` FOREIGN KEY (`HPROCI_`) REFERENCES `jbpm4_hist_procinst` (`DBID_`),CONSTRAINT `FK_HDETAIL_HTASK` FOREIGN KEY (`HTASK_`) REFERENCES `jbpm4_hist_task` (`DBID_`),CONSTRAINT `FK_HDETAIL_HVAR` FOREIGN KEY (`HVAR_`) REFERENCES `jbpm4_hist_var` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_hist_procinst`;
CREATE TABLE IF NOT EXISTS `jbpm4_hist_procinst` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`ID_` varchar(255) DEFAULT NULL,`PROCDEFID_` varchar(255) DEFAULT NULL,`KEY_` varchar(255) DEFAULT NULL,`START_` datetime DEFAULT NULL,`END_` datetime DEFAULT NULL,`DURATION_` bigint(20) DEFAULT NULL,`STATE_` varchar(255) DEFAULT NULL,`ENDACTIVITY_` varchar(255) DEFAULT NULL,`NEXTIDX_` int(11) DEFAULT NULL,PRIMARY KEY (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_hist_task`;
CREATE TABLE IF NOT EXISTS `jbpm4_hist_task` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`EXECUTION_` varchar(255) DEFAULT NULL,`OUTCOME_` varchar(255) DEFAULT NULL,`ASSIGNEE_` varchar(255) DEFAULT NULL,`PRIORITY_` int(11) DEFAULT NULL,`STATE_` varchar(255) DEFAULT NULL,`CREATE_` datetime DEFAULT NULL,`END_` datetime DEFAULT NULL,`DURATION_` bigint(20) DEFAULT NULL,`NEXTIDX_` int(11) DEFAULT NULL,`SUPERTASK_` bigint(20) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_HSUPERT_SUB` (`SUPERTASK_`),KEY `FK_HSUPERT_SUB` (`SUPERTASK_`),CONSTRAINT `FK_HSUPERT_SUB` FOREIGN KEY (`SUPERTASK_`) REFERENCES `jbpm4_hist_task` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_hist_var`;
CREATE TABLE IF NOT EXISTS `jbpm4_hist_var` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`PROCINSTID_` varchar(255) DEFAULT NULL,`EXECUTIONID_` varchar(255) DEFAULT NULL,`VARNAME_` varchar(255) DEFAULT NULL,`VALUE_` varchar(255) DEFAULT NULL,`HPROCI_` bigint(20) DEFAULT NULL,`HTASK_` bigint(20) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_HVAR_HPROCI` (`HPROCI_`),KEY `IDX_HVAR_HTASK` (`HTASK_`),KEY `FK_HVAR_HPROCI` (`HPROCI_`),KEY `FK_HVAR_HTASK` (`HTASK_`),CONSTRAINT `FK_HVAR_HPROCI` FOREIGN KEY (`HPROCI_`) REFERENCES `jbpm4_hist_procinst` (`DBID_`),CONSTRAINT `FK_HVAR_HTASK` FOREIGN KEY (`HTASK_`) REFERENCES `jbpm4_hist_task` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_id_group`;
CREATE TABLE IF NOT EXISTS `jbpm4_id_group` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`ID_` varchar(255) DEFAULT NULL,`NAME_` varchar(255) DEFAULT NULL,`engine_` varchar(255) DEFAULT NULL,`PARENT_` bigint(20) DEFAULT NULL,`TYPE_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_GROUP_PARENT` (`PARENT_`),KEY `FK_GROUP_PARENT` (`PARENT_`),CONSTRAINT `FK_GROUP_PARENT` FOREIGN KEY (`PARENT_`) REFERENCES `jbpm4_id_group` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_id_membership`;
CREATE TABLE IF NOT EXISTS `jbpm4_id_membership` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`USER_` bigint(20) DEFAULT NULL,`GROUP_` bigint(20) DEFAULT NULL,`NAME_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_MEM_USER` (`USER_`),KEY `IDX_MEM_GROUP` (`GROUP_`),KEY `FK_MEM_GROUP` (`GROUP_`),KEY `FK_MEM_USER` (`USER_`),CONSTRAINT `FK_MEM_GROUP` FOREIGN KEY (`GROUP_`) REFERENCES `jbpm4_id_group` (`DBID_`),CONSTRAINT `FK_MEM_USER` FOREIGN KEY (`USER_`) REFERENCES `jbpm4_id_user` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_id_user`;
CREATE TABLE IF NOT EXISTS `jbpm4_id_user` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`ID_` varchar(255) DEFAULT NULL,`PASSWORD_` varchar(255) DEFAULT NULL,`GIVENNAME_` varchar(255) DEFAULT NULL,`FAMILYNAME_` varchar(255) DEFAULT NULL,`BUSINESSEMAIL_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_job`;
CREATE TABLE IF NOT EXISTS `jbpm4_job` (`DBID_` bigint(20) NOT NULL,`CLASS_` varchar(255) NOT NULL,`DBVERSION_` int(11) NOT NULL,`DUEDATE_` datetime DEFAULT NULL,`STATE_` varchar(255) DEFAULT NULL,`ISEXCLUSIVE_` bit(1) DEFAULT NULL,`LOCKOWNER_` varchar(255) DEFAULT NULL,`LOCKEXPTIME_` datetime DEFAULT NULL,`EXCEPTION_` longtext,`RETRIES_` int(11) DEFAULT NULL,`PROCESSINSTANCE_` bigint(20) DEFAULT NULL,`EXECUTION_` bigint(20) DEFAULT NULL,`CFG_` bigint(20) DEFAULT NULL,`SIGNAL_` varchar(255) DEFAULT NULL,`EVENT_` varchar(255) DEFAULT NULL,`REPEAT_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_JOBRETRIES` (`RETRIES_`),KEY `IDX_JOB_CFG` (`CFG_`),KEY `IDX_JOB_PRINST` (`PROCESSINSTANCE_`),KEY `IDX_JOB_EXE` (`EXECUTION_`),KEY `IDX_JOBLOCKEXP` (`LOCKEXPTIME_`),KEY `IDX_JOBDUEDATE` (`DUEDATE_`),KEY `FK_JOB_CFG` (`CFG_`),CONSTRAINT `FK_JOB_CFG` FOREIGN KEY (`CFG_`) REFERENCES `jbpm4_lob` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_lob`;
CREATE TABLE IF NOT EXISTS `jbpm4_lob` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`BLOB_VALUE_` longblob,`DEPLOYMENT_` bigint(20) DEFAULT NULL,`NAME_` longtext,PRIMARY KEY (`DBID_`),KEY `IDX_LOB_DEPLOYMENT` (`DEPLOYMENT_`),KEY `FK_LOB_DEPLOYMENT` (`DEPLOYMENT_`),CONSTRAINT `FK_LOB_DEPLOYMENT` FOREIGN KEY (`DEPLOYMENT_`) REFERENCES `jbpm4_deployment` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_participation`;
CREATE TABLE IF NOT EXISTS `jbpm4_participation` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`GROUPID_` varchar(255) DEFAULT NULL,`USERID_` varchar(255) DEFAULT NULL,`engine_` varchar(255) DEFAULT NULL,`TASK_` bigint(20) DEFAULT NULL,`SWIMLANE_` bigint(20) DEFAULT NULL,`TYPE_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_PART_TASK` (`TASK_`),KEY `FK_PART_SWIMLANE` (`SWIMLANE_`),KEY `FK_PART_TASK` (`TASK_`),CONSTRAINT `FK_PART_SWIMLANE` FOREIGN KEY (`SWIMLANE_`) REFERENCES `jbpm4_swimlane` (`DBID_`),CONSTRAINT `FK_PART_TASK` FOREIGN KEY (`TASK_`) REFERENCES `jbpm4_task` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_property`;
CREATE TABLE IF NOT EXISTS `jbpm4_property` (`KEY_` varchar(255) NOT NULL,`VERSION_` int(11) NOT NULL,`VALUE_` varchar(255) DEFAULT NULL,PRIMARY KEY (`KEY_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_swimlane`;
CREATE TABLE IF NOT EXISTS `jbpm4_swimlane` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`NAME_` varchar(255) DEFAULT NULL,`ASSIGNEE_` varchar(255) DEFAULT NULL,`EXECUTION_` bigint(20) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_SWIMLANE_EXEC` (`EXECUTION_`),KEY `FK_SWIMLANE_EXEC` (`EXECUTION_`),CONSTRAINT `FK_SWIMLANE_EXEC` FOREIGN KEY (`EXECUTION_`) REFERENCES `jbpm4_execution` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_task`;
CREATE TABLE IF NOT EXISTS `jbpm4_task` (`DBID_` bigint(20) NOT NULL,`CLASS_` char(1) NOT NULL,`DBVERSION_` int(11) NOT NULL,`NAME_` varchar(255) DEFAULT NULL,`DESCR_` longtext,`STATE_` varchar(255) DEFAULT NULL,`SUSPHISTSTATE_` varchar(255) DEFAULT NULL,`ASSIGNEE_` varchar(255) DEFAULT NULL,`FORM_` varchar(255) DEFAULT NULL,`PRIORITY_` int(11) DEFAULT NULL,`CREATE_` datetime DEFAULT NULL,`DUEDATE_` datetime DEFAULT NULL,`PROGRESS_` int(11) DEFAULT NULL,`SIGNALLING_` bit(1) DEFAULT NULL,`EXECUTION_ID_` varchar(255) DEFAULT NULL,`ACTIVITY_NAME_` varchar(255) DEFAULT NULL,`HASVARS_` bit(1) DEFAULT NULL,`SUPERTASK_` bigint(20) DEFAULT NULL,`EXECUTION_` bigint(20) DEFAULT NULL,`PROCINST_` bigint(20) DEFAULT NULL,`SWIMLANE_` bigint(20) DEFAULT NULL,`TASKDEFNAME_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_TASK_SUPERTASK` (`SUPERTASK_`),KEY `FK_TASK_SWIML` (`SWIMLANE_`),KEY `FK_TASK_SUPERTASK` (`SUPERTASK_`),CONSTRAINT `FK_TASK_SUPERTASK` FOREIGN KEY (`SUPERTASK_`) REFERENCES `jbpm4_task` (`DBID_`),CONSTRAINT `FK_TASK_SWIML` FOREIGN KEY (`SWIMLANE_`) REFERENCES `jbpm4_swimlane` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_variable`;
CREATE TABLE IF NOT EXISTS `jbpm4_variable` (`DBID_` bigint(20) NOT NULL,`CLASS_` varchar(255) NOT NULL,`DBVERSION_` int(11) NOT NULL,`KEY_` varchar(255) DEFAULT NULL,`CONVERTER_` varchar(255) DEFAULT NULL,`HIST_` bit(1) DEFAULT NULL,`EXECUTION_` bigint(20) DEFAULT NULL,`TASK_` bigint(20) DEFAULT NULL,`LOB_` bigint(20) DEFAULT NULL,`DATE_VALUE_` datetime DEFAULT NULL,`DOUBLE_VALUE_` double DEFAULT NULL,`CLASSNAME_` varchar(255) DEFAULT NULL,`LONG_VALUE_` bigint(20) DEFAULT NULL,`STRING_VALUE_` varchar(255) DEFAULT NULL,`TEXT_VALUE_` longtext,`EXESYS_` bigint(20) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_VAR_EXESYS` (`EXESYS_`),KEY `IDX_VAR_TASK` (`TASK_`),KEY `IDX_VAR_EXECUTION` (`EXECUTION_`),KEY `IDX_VAR_LOB` (`LOB_`),KEY `FK_VAR_LOB` (`LOB_`),KEY `FK_VAR_EXECUTION` (`EXECUTION_`),KEY `FK_VAR_EXESYS` (`EXESYS_`),KEY `FK_VAR_TASK` (`TASK_`),CONSTRAINT `FK_VAR_EXECUTION` FOREIGN KEY (`EXECUTION_`) REFERENCES `jbpm4_execution` (`DBID_`),CONSTRAINT `FK_VAR_EXESYS` FOREIGN KEY (`EXESYS_`) REFERENCES `jbpm4_execution` (`DBID_`),CONSTRAINT `FK_VAR_LOB` FOREIGN KEY (`LOB_`) REFERENCES `jbpm4_lob` (`DBID_`),CONSTRAINT `FK_VAR_TASK` FOREIGN KEY (`TASK_`) REFERENCES `jbpm4_task` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

☃️4.2 数据库逻辑关系

18张表简介:

在这里插入图片描述

4.2.1 资源库与运行时的表

在这里插入图片描述

4.2.2 历史数据表

在这里插入图片描述

☃️4.3 表结构

表JBPM4_DEPLOYMENT

表名流程定义表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK流程模版标识
NAME_CLOBY流程模版名称
TIMESTAMP_NUMBER(19)Y时间戳
STATE_VARCHAR2(255 CHAR)Y可用状态
补充说明一条 jbpm4_deployment 记录需要对应4 条jbpm4_deployprop 记录

表JBPM4_DEPLOYPROP

表名流程定义属性表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK主键
DEPLOYMENT_NUMBER(19)YFK(JBPM4_DEPLOYMENT, DBID_)流程ID
OBJNAME_VARCHAR2(255 CHAR)Y流程名称
KEY_VARCHAR2(255 CHAR)Y类型
STRINGVAL_VARCHAR2(255 CHAR)Y类型是字符串时的值
LONGVAL_NUMBER(19)Y类型是数值时的值
补充说明① 一条jbpm4_deployment 记录需要对应4 条jbpm4_deployprop 记录,存储在KEY_里面:Langid 标识解析流程定义使用的 jpdl 的版本Pdid 流程定义的 id , 唯一标识一个流程Pdkey 流程的 key ,标识同一类流程Pdversion 标识流程的版本

表JBPM4_EXECUTION

表名流程实例表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK流程实例ID
CLASS_VARCHAR2(255 CHAR)N类型
DBVERSION_NUMBER(10)N步骤版本
ACTIVITYNAME_VARCHAR2(255 CHAR)Y节点名称
PROCDEFID_VARCHAR2(255 CHAR)Y流程定义ID
HASVARS_NUMBER(1)Y是否有变量值
NAME_VARCHAR2(255 CHAR)Y名称
KEY_VARCHAR2(255 CHAR)Y
ID_VARCHAR2(255 CHAR)YUK令牌ID
STATE_VARCHAR2(255 CHAR)Y令牌状态
SUSPHISTSTATE_VARCHAR2(255 CHAR)Y保存暂停之前状态
PRIORITY_NUMBER(10)Y优先级
HISACTINST_NUMBER(19)Y历史活动实例ID
PARENT_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)父实例
INSTANCE_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)流程实例
SUPEREXEC_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)父令牌
SUBPROCINST_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)子流程实例
PARENT_IDX_NUMBER(10)Y父实例序号
补充说明驱动流程运行,记录流程实例运行必须的信息

表JBPM4_HIST_ACTINST

表名流程活动(节点)实例表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
CLASS_VARCHAR2(255 CHAR)Nactivity类型
DBVERSION_NUMBER(10)N版本
HPROCI_NUMBER( 19)YFK(JBPM4_HIST_PROCINST, DBID_)历史流程实例
TYPE_VARCHAR2(255 CHAR)Y活动实例类型
EXECUTION_VARCHAR2(255 CHAR)Y令牌
ACTIVITY_NAME_VARCHAR2(255 CHAR)Y活动实例名称
START_TIMESTAMP(6)Y开始名称
END_TIMESTAMP(6)Y结束时间
DURATION_NUMBER(19)Y节点停留时间
TRANSITION_VARCHAR2(255 CHAR)Y迁移路径
NEXTIDX_NUMBER(10)Y
HTASK_NUMBER(19)YFK(JBPM4_HIST_TASK, DBID_)对应的定义任务
补充说明流程运行中执行过的节点的记录,包括Task和State节点

JBPM4_HIST_DETAIL

表名流程历史详细表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK流程模版标识
CLASS_VARCHAR2(255 CHAR)N
DBVERSION_NUMBER(10)N版本
USERID_VARCHAR2(255 CHAR)Y用户ID
TIME_TIMESTAMP(6)Y时间
HPROCI_NUMBER(19)YFK(JBPM4_HIST_PROCINST, DBID_)对应的历史流程实例
HPROCIIDX_NUMBER(10)Y
HACTI_NUMBER(19)YFK(JBPM4_HIST_ACTINST, DBID_)对应的历史活动实例ID
HACTIIDX_NUMBER(10)Y
HTASK_NUMBER(19)YFK(JBPM4_HIST_TASK, DBID_)对应的任务
HTASKIDX_NUMBER(10)Y
HVAR_NUMBER(19)YFK(JBPM4_HIST_VAR, DBID_)对应的变量值
HVARIDX_NUMBER(10)Y
MESSAGE_CLOBY消息
OLD_STR_VARCHAR2(255 CHAR)Y老的String类型的值
NEW_STR_VARCHAR2(255 CHAR)Y新的String类型的值
OLD_INT_NUMBER(10)Y
NEW_INT_NUMBER(10)Y
OLD_TIME_TIMESTAMP(6)Y
NEW_TIME_TIMESTAMP(6)Y
PARENT_NUMBER(19)Y变量的父变量
PARENT_IDX_NUMBER(10)Y变量的父变量序号
补充说明历史信息的详细表,跟其他的历史表进行关联

JBPM4_HIST_PROCINST

表名流程实例历史表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
DBVERSION_NUMBER(10)N版本
ID_VARCHAR2(255 CHAR)Y
PROCDEFID_VARCHAR2(255 CHAR)Y流程定义ID
KEY_VARCHAR2(255 CHAR)Y
START_TIMESTAMP(6)Y开始时间
END_TIMESTAMP(6)Y结束时间
DURATION_NUMBER(19)Y停留时间
STATE_VARCHAR2(255 CHAR)Y流程实例状态(活动,完成)
ENDACTIVITY_VARCHAR2(255 CHAR)Y是否完成
NEXTIDX_NUMBER(10)Y
补充说明历史流程实例相关信息

JBPM4_HIST_TASK

表名流程任务实例历史表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
DBVERSION_NUMBER(10)N版本
EXECUTION_VARCHAR2(255 CHAR)Y令牌
OUTCOME_VARCHAR2(255 CHAR)Y路径名称
ASSIGNEE_VARCHAR2(255 CHAR)Y处理人
PRIORITY_NUMBER(10)Y优先级
STATE_VARCHAR2(255 CHAR)Y完成情况
CREATE_TIMESTAMP(6)Y创建时间
END_TIMESTAMP(6)Y完成时间
DURATION_NUMBER(19)Y任务节点停留时间
NEXTIDX_NUMBER(10)Y
SUPERTASK_NUMBER(19)YFK(JBPM4_HIST_TASK, DBID_)父任务
补充说明历史任务相关信息,与jbpm4_hist_actinst关联,单独的表减少了state节点相应字段的空闲和空间浪费

JBPM4_HIST_VAR

表名流程变量(上下文)历史表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK流程模版标识
DBVERSION_NUMBER(10)N版本
PROCINSTID_VARCHAR2(255 CHAR)Y对应运行的流程实例
EXECUTIONID_VARCHAR2(255 CHAR)Y活动实例ID
VARNAME_VARCHAR2(255 CHAR)Y变量名称
VALUE_VARCHAR2(255 CHAR)Y
HPROCI_NUMBER(19)YFK(JBPM4_HIST_PROCINST, DBID_)历史流程实例
HTASK_NUMBER(19)YFK(JBPM4_HIST_TASK, DBID_)历史任务
补充说明历史变量相关信息

JBPM4_ID_GROUP

表名组表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)N
DBVERSION_NUMBER(10)N
ID_VARCHAR2(255 CHAR)Y
NAME_VARCHAR2(255 CHAR)Y
TYPE_VARCHAR2(255 CHAR)Y
PARENT_NUMBER(19)Y
补充说明

JBPM4_ID_MEMBERSHIP

表名用户角色表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)N
DBVERSION_NUMBER(10)N
USER_NUMBER(19)Y
GROUP_NUMBER(19)Y
NAME_VARCHAR2(255 CHAR)Y
补充说明

JBPM4_ID_USER

表名用户表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)N
DBVERSION_NUMBER(10)N
ID_VARCHAR2(255 CHAR)Y
PASSWORD_VARCHAR2(255 CHAR)Y
GIVENNAME_VARCHAR2(255 CHAR)Y
FAMILYNAME_VARCHAR2(255 CHAR)Y
BUSINESSEMAIL_VARCHAR2(255 CHAR)Y
补充说明

JBPM4_JOB

表名定时表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
CLASS_VARCHAR2(255 CHAR)N版本
DBVERSION_NUMBER(10)N
DUEDATE_TIMESTAMP(6)Y到期时间
STATE_VARCHAR2(255 CHAR)Y状态
ISEXCLUSIVE_NUMBER(1)Y是否可执行
LOCKOWNER_VARCHAR2(255 CHAR)Y锁定的参与者
LOCKEXPTIME_TIMESTAMP(6)Y锁定释放时间
EXCEPTION_CLOBY活动实例
RETRIES_NUMBER(10)Y重复次数
PROCESSINSTANCE_NUMBER(19)Y流程实例
EXECUTION_NUMBER(19)Y异常信息
CFG_NUMBER(19)YFK(JBPM4_LOB, DBID_)配置
SIGNAL_VARCHAR2(255 CHAR)Y信号
EVENT_VARCHAR2(255 CHAR)Y事件
REPEAT_VARCHAR2(255 CHAR)Y重复
补充说明作业相关

JBPM4_LOB

表名存储表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK主键
DBVERSION_NUMBER(10)N版本
BLOB_VALUE_BLOBY流程定义文件(xml、img、class)
DEPLOYMENT_NUMBER(19)YFK(JBPM4_DEPLOYMENT, DBID_)流程模版标识ID
NAME_CLOBY流程定义文件名
补充说明保存根据流程定义 xml 形成的二进制数据

JBPM4_PARTICIPATION

表名参与者表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
DBVERSION_NUMBER(10)N版本
GROUPID_VARCHAR2(255 CHAR)Y组ID
USERID_VARCHAR2(255 CHAR)Y用户ID
TYPE_VARCHAR2(255 CHAR)Y类型
TASK_NUMBER(19)YFK(JBPM4_SWIMLANE, DBID_)任务ID
SWIMLANE_NUMBER(19)YFK(JBPM4_TASK,DBID_)对应泳道
补充说明办理人相关信息

JBPM4_PROPERTY

表名序列表
列名数据类型(精度范围)空/非空约束条件中文名
KEY_VARCHAR2(255 CHAR)N
VERSION_NUMBER(10)N
VALUE_VARCHAR2(255 CHAR)Y
补充说明为运行时需要持久化的对象生成dbid,其记录当前所有对象实例的最大值,每次需要生成dbid时,需要先获取该值,然后递增返回。

JBPM4_SWIMLANE

表名泳道表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
DBVERSION_NUMBER(10)N版本
NAME_VARCHAR2(255 CHAR)Y泳道名
ASSIGNEE_VARCHAR2(255 CHAR)Y处理人
EXECUTION_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)活动实例
补充说明泳道相关信息

JBPM4_TASK

表名任务表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK主键
CLASS_CHAR(1 CHAR)N类型
DBVERSION_NUMBER(10)N版本
NAME_VARCHAR2(255 CHAR)Y活动节点名称
DESCR_CLOBY描述
STATE_VARCHAR2(255 CHAR)Y状态
SUSPHISTSTATE_VARCHAR2(255 CHAR)Y保存暂停之前状态
ASSIGNEE_VARCHAR2(255 CHAR)Y处理人
FORM_VARCHAR2(255 CHAR)Y表单地址
PRIORITY_NUMBER(10)Y优先级
CREATE_TIMESTAMP(6)Y创建时间
DUEDATE_TIMESTAMP(6)Y任务持续时间,表明任务应在多长时间内完成
PROGRESS_NUMBER(10)Y活动实例名
SIGNALLING_NUMBER(1)Y签收
EXECUTION_ID_VARCHAR2(255 CHAR)Y活动实例ID
ACTIVITY_NAME_VARCHAR2(255 CHAR)Y活动实例名称
HASVARS_NUMBER(1)Y是否有流程变量
SUPERTASK_NUMBER(19)YFK(JBPM4_TASK, DBID_)父任务
EXECUTION_NUMBER(19)Y活动实例
PROCINST_NUMBER(19)Y流程实例
SWIMLANE_NUMBER(19)YFK(JBPM4_SWIMLANE, DBID_)对应的泳道
TASKDEFNAME_VARCHAR2(255 CHAR)Y任务定义名
补充说明记录任务的相关信息

JBPM4_VARIABLE

表名上下文表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
CLASS_VARCHAR2(255 CHAR)N版本
DBVERSION_NUMBER(10)N变量类型
KEY_VARCHAR2(255 CHAR)Y变量索引
CONVERTER_VARCHAR2(255 CHAR)Y数值转换器
HIST_NUMBER(1)Y对应的流程实例
EXECUTION_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)活动实例
TASK_NUMBER(19)YFK(JBPM4_TASK, DBID_)对应的任务
LOB_NUMBER(19)YFK(JBPM4_LOB, DBID_)
DATE_VALUE_TIMESTAMP(6)Y当值为date类型时,存值
DOUBLE_VALUE_FLOATY当值为double类型时,存值
CLASSNAME_VARCHAR2(255 CHAR)Y变量类名
LONG_VALUE_NUMBER(19)Y当值为long类型时,存值
STRING_VALUE_VARCHAR2(255 CHAR)Y当值为String类型时,存值
TEXT_VALUE_CLOBY当值为date类型时,存值
EXESYS_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)
补充说明记录传给流程的变量的相关信息

☃️4.4 流程操作与数表交互说明

发布一个流程deploy

① jbpm4_deployment(流程定义):新增一条记录,记录新增的流程名称、时间、状态;

② jbpm4_lob(存储表): 新增一条记录,保存根据流程定义xml形成的二进制数据(同时也保存变量variable);

③ jbpm4_deployprop(流程定义属性表):新增四条记录,记录流程的属性,在“KEY_”里面记录一下四项内容:

Langid 标识解析流程定义使用的 jpdl 的版本;

Pdid 流程定义的 id , 唯一标识一个流程;

Pdkey 流程的 key ,标识同一类流程;

Pdversion 标识流程的版本。

zip包:(包含png和jpdl.xml)后

① JBPM4_DEPLOYMENT;

② JBPM4_DEPLOYPROP ;

③ JBPM4_LOB多两条。

开始一个流程startProcessInstanceByKey后

① jbpm4_execution(流程实例表):新增一条记录

② jbpm4_hist_procinst(流程实例历史表):新增一条记录

③ jbpm4_variable (上下表):新增一条记录

④ jbpm4_task (任务表):新增一条记录

⑤ jbpm4_hist_task(任务历史表):新增一条记录

⑥ jbpm4_hist_actinst (活动节点实例表):新增一条记录

填写申请信息

① jbpm4_variable(上下表) : 新增N条记录,根据表单信息决定

② jbpm4_task (任务表):新增一条记录

③ jbpm4_hist_task(任务历史表):新增一条记录

④ jbpm4_hist_actinst (活动节点实例表):新增一条记录

审批申请信息

1.同意:

① jbpm4_hist_actinst (活动节点实例表):新增一条记录

2.驳回:

① jbpm4_task (任务表):新增一条记录

② jbpm4_hist_task(任务历史表):新增一条记录

③ jbpm4_hist_actinst (活动节点实例表):新增一条记录

审批结束

① jbpm4_hist_actinst (活动节点实例表):新增一条记录




在这里插入图片描述



这篇关于工作流JBPM系统数据库表介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/915194

相关文章

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

如何通过try-catch判断数据库唯一键字段是否重复

《如何通过try-catch判断数据库唯一键字段是否重复》在MyBatis+MySQL中,通过try-catch捕获唯一约束异常可避免重复数据查询,优点是减少数据库交互、提升并发安全,缺点是异常处理开... 目录1、原理2、怎么理解“异常走的是数据库错误路径,开销比普通逻辑分支稍高”?1. 普通逻辑分支 v

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom

Python与MySQL实现数据库实时同步的详细步骤

《Python与MySQL实现数据库实时同步的详细步骤》在日常开发中,数据同步是一项常见的需求,本篇文章将使用Python和MySQL来实现数据库实时同步,我们将围绕数据变更捕获、数据处理和数据写入这... 目录前言摘要概述:数据同步方案1. 基本思路2. mysql Binlog 简介实现步骤与代码示例1

Java中HashMap的用法详细介绍

《Java中HashMap的用法详细介绍》JavaHashMap是一种高效的数据结构,用于存储键值对,它是基于哈希表实现的,提供快速的插入、删除和查找操作,:本文主要介绍Java中HashMap... 目录一.HashMap1.基本概念2.底层数据结构:3.HashCode和equals方法为什么重写Has

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

使用shardingsphere实现mysql数据库分片方式

《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp

Go语言连接MySQL数据库执行基本的增删改查

《Go语言连接MySQL数据库执行基本的增删改查》在后端开发中,MySQL是最常用的关系型数据库之一,本文主要为大家详细介绍了如何使用Go连接MySQL数据库并执行基本的增删改查吧... 目录Go语言连接mysql数据库准备工作安装 MySQL 驱动代码实现运行结果注意事项Go语言执行基本的增删改查准备工作