Activiti 数据库表结构
——文档适用于 Activiti 5-6
Activiti 数据库表结构设计说明
Activiti 工作流总共包含 23
张数据表(现在是25张,新增了 ACT_EVT_LOG
和 ACT_PROCDEF_INFO
)
Activiti 7 的数据库表结构设计
# Activiti 7 的数据库表结构设计
ACT_EVT_LOG, ACT_GE_BYTEARRAY, ACT_GE_PROPERTY, ACT_HI_ACTINST, ACT_HI_ATTACHMENT, ACT_HI_COMMENT, ACT_HI_DETAIL, ACT_HI_IDENTITYLINK, ACT_HI_PROCINST, ACT_HI_TASKINST, ACT_HI_VARINST, ACT_PROCDEF_INFO, ACT_RE_DEPLOYMENT, ACT_RE_MODEL, ACT_RE_PROCDEF, ACT_RU_DEADLETTER_JOB, ACT_RU_EVENT_SUBSCR, ACT_RU_EXECUTION, ACT_RU_IDENTITYLINK, ACT_RU_INTEGRATION, ACT_RU_JOB, ACT_RU_SUSPENDED_JOB, ACT_RU_TASK, ACT_RU_TIMER_JOB, ACT_RU_VARIABLE
Activiti 各大版本表对比
以下只是对表名做了简单的对比,并没有涉及到数据库表字段及数据类型
编号 | 表名 | Activiti 5.23.0 | Acticiti 6.0.0 | Activiti 7.1.0.M6 |
---|---|---|---|---|
1 | ACT_EVT_LOG | ☑ | ☑ | ☑ |
2 | ACT_GE_BYTEARRAY | ☑ | ☑ | ☑ |
3 | ACT_GE_PROPERTY | ☑ | ☑ | ☑ |
4 | ACT_HI_ACTINST | ☑ | ☑ | ☑ |
5 | ACT_HI_ATTACHMENT | ☑ | ☑ | ☑ |
6 | ACT_HI_COMMENT | ☑ | ☑ | ☑ |
7 | ACT_HI_DETAIL | ☑ | ☑ | ☑ |
8 | ACT_HI_IDENTITYLINK | ☑ | ☑ | ☑ |
9 | ACT_HI_PROCINST | ☑ | ☑ | ☑ |
10 | ACT_HI_TASKINST | ☑ | ☑ | ☑ |
11 | ACT_HI_VARINST | ☑ | ☑ | ☑ |
12 | ACT_ID_GROUP | ☑ | ☑ | |
13 | ACT_ID_INFO | ☑ | ☑ | |
14 | ACT_ID_MEMBERSHIP | ☑ | ☑ | |
15 | ACT_ID_USER | ☑ | ☑ | |
16 | ACT_PROCDEF_INFO | ☑ | ☑ | ☑ |
17 | ACT_RE_DEPLOYMENT | ☑ | ☑ | ☑ |
18 | ACT_RE_MODEL | ☑ | ☑ | ☑ |
19 | ACT_RE_PROCDEF | ☑ | ☑ | ☑ |
20 | ACT_RU_DEADLETTER_JOB | ☑ | ☑ | |
21 | ACT_RU_EVENT_SUBSCR | ☑ | ☑ | ☑ |
22 | ACT_RU_EXECUTION | ☑ | ☑ | ☑ |
23 | ACT_RU_IDENTITYLINK | ☑ | ☑ | ☑ |
24 | ACT_RU_INTEGRATION | ☑ | ||
25 | ACT_RU_JOB | ☑ | ☑ | ☑ |
26 | ACT_RU_SUSPENDED_JOB | ☑ | ☑ | |
27 | ACT_RU_TASK | ☑ | ☑ | ☑ |
28 | ACT_RU_TIMER_JOB | ☑ | ☑ | |
29 | ACT_RU_VARIABLE | ☑ | ☑ | ☑ |
表名规则
Activiti 使用到的表都是 ACT_ 开头的。表名的第二部分用两个字母表明表的用途。
- ACT_GE_ (
GE
) 表示 general 全局通用数据及设置,各种情况都使用的数据。 - ACT_HI_ (
HI
) 表示 history 历史数据表,包含着程执行的历史相关数据,如结束的流程实例,变量,任务,等等 - ACT_ID_ (
ID
) 表示 identity 组织机构,用户记录,流程中使用到的用户和组。这些表包含标识的信息,如用户,用户组,等等。 - ACT_RE_ (
RE
) 表示 repository 存储,包含的是静态信息,如,流程定义,流程的资源(图片,规则等)。 - ACT_RU_ (
RU
) 表示 runtime 运行时,运行时的流程变量,用户任务,变量,职责(job)等运行时的数据。Activiti 只存储实例执行期间的运行时数据,当流程实例结束时,将删除这些记录。这就保证了这些运行时的表小且快。
25 张表详情
一般数据 (ACT_GE_)
通用数据表
表名 | 解释 |
---|---|
ACT_GE_BYTEARRAY | 二进制数据表,存储通用的流程定义和流程资源。 |
ACT_GE_PROPERTY | 系统相关属性,属性数据表存储整个流程引擎级别的数据,初始化表结构时,会默认插入三条记录。 |
流程历史记录 (ACT_HI_)
表名 | 解释 |
---|---|
ACT_HI_ACTINST | 历史节点表 |
ACT_HI_ATTACHMENT | 历史附件表 |
ACT_HI_COMMENT | 历史意见表 |
ACT_HI_DETAIL | 历史详情表,提供历史变量的查询 |
ACT_HI_IDENTITYLINK | 历史流程人员表 |
ACT_HI_PROCINST | 历史流程实例表 |
ACT_HI_TASKINST | 历史任务实例表 |
ACT_HI_VARINST | 历史变量表 |
用户用户组表 (ACT_ID_)
身份数据表
表名 | 解释 |
---|---|
ACT_ID_GROUP | 用户组信息表 |
ACT_ID_INFO | 用户扩展信息表 |
ACT_ID_MEMBERSHIP | 用户与用户组对应信息表 |
ACT_ID_USER | 用户信息表 |
流程定义表 (ACT_RE_)
流程存储数据表
表名 | 解释 |
---|---|
ACT_RE_DEPLOYMENT | 部署信息表 |
ACT_RE_MODEL | 流程设计模型部署表 |
ACT_RE_PROCDEF | 流程定义数据表 |
运行实例表 (ACT_RU_)
表名 | 解释 |
---|---|
ACT_RU_EVENT_SUBSCR | 运行时事件 throwEvent、catchEvent 时间监听信息表 |
ACT_RU_EXECUTION | 运行时流程执行实例 |
ACT_RU_IDENTITYLINK | 运行时流程人员表,主要存储任务节点与参与者的相关信息 |
ACT_RU_JOB | 运行时定时任务数据表 |
ACT_RU_TASK | 运行时任务节点表 |
ACT_RU_VARIABLE | 运行时流程变量数据表 |
其它
表名 | 解释 |
---|---|
ACT_EVT_LOG | 事件日志 |
ACT_PROCDEF_INFO | 流程定义的动态变更信息 |
一般数据 (ACT_GE_)
ACT_GE_BYTEARRAY 二进制数据表
二进制数据表,存储通用的流程定义和流程资源。(act_ge_bytearray)
保存流程定义图片和xml、Serializable(序列化)的变量,即保存所有二进制数据,特别注意类路径部署时候,不要把svn等隐藏文件或者其他与流程无关的文件也一起部署到该表中,会造成一些错误(可能导致流程定义无法删除)
用于保存与流程引擎相关的资源,只要调用了 Activiti 存储服务的 API ,涉及的资源均会被转换为 byte 数组保存到这个表中。在资源表中设计了一个 BYTES宇段,用来保存资源的内容,因此理论上其可以用于保存任何类型的资源(文件或者其他来源的输入流)。一般情况下, Activiti 使用这个表来保存字符串、流程文件的内容、流程图片内容
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | Y | 主键ID | |
REV_ | 乐观锁 | int | Y | Version(版本) | |
NAME_ | 名称 | nvarchar(255) | Y | 部署的文件名称,如:leave.bpmn.png,leave.bpmn20.xml | |
DEPLOYMENT_ID_ | 部署ID | nvarchar(64) | Y | 部署表ID | |
BYTES_ | 字节 | varbinary(max) | Y | 部署文件 | |
GENERATED_ | 是否是引擎生成 | tinyint | Y | 0为用户生成,1为activiti生成 |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | 数据版本, Activiti为一些有可能会被频繁修改的数据表,加入该字段,用来表示该数据被操作的次数 |
NAME_ | varchar(255) | YES | 资源名称 |
DEPLOYMENT_ID_ | varchar(64) | YES | 一次部署可以添加多个资源,该字段与部署表ACT_RE_DEPLOYMENT的主键相关联 |
BYTES_ | longblob | YES | 资源内容,最大可存储4G数据 |
GENERATED_ | tinyint(4) | YES | 是否由Activiti自动产生的资源,0 |
ACT_GE_PROPERTY 属性数据表
属性数据表(act_ge_property)
属性数据表。存储整个流程引擎级别的数据。
Activiti 将全部的属性抽象为 key-value 对,每个属性都有名称和值, 使用
ACT GE PROPERTY 来保存这些属性
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
NAME_ | 名称 | nvarchar(64) | √ | schema.versionschema.historynext.dbid | |
VALUE_ | 值 | nvarchar(300) | √ | 5.create(5.) | |
REV_ | 乐观锁 | int | √ | version |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
NAME_ | varchar(64) | NO | 名称 |
VALUE_ | varchar(300) | YES | 值 |
REV_ | int(11) | YES | 数据的版本号 |
流程历史记录 (ACT_HI_)
历史数据表就好像流程引擎的日志表,操作过的流程元素将会被记录到历史表中。
ACT_HI_ACTINST 历史节点表
历史节点表(act_hi_actinst)
历史活动信息。这里记录流程流转过的所有节点,与HI_TASKINST不同的是,taskinst只记录usertask内容
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | ||
PROC_DEF_ID_ | 流程定义ID | nvarchar(64) | |||
PROC_INST_ID_ | 流程实例ID | nvarchar(64) | |||
EXECUTION_ID_ | 执行实例ID | nvarchar(64) | |||
ACT_ID_ | 节点ID | nvarchar(225) | 节点定义ID | ||
TASK_ID_ | 任务实例ID | nvarchar(64) | √ | 任务实例ID 其他节点类型实例ID在这里为空 | |
CALL_PROC_INST_ID_ | 调用外部的流程实例ID | nvarchar(64) | √ | 调用外部流程的流程实例ID’ | |
ACT_NAME_ | 节点名称 | nvarchar(225) | √ | 节点定义名称 | |
ACT_TYPE_ | 节点类型 | nvarchar(225) | 如startEvent、userTask | ||
ASSIGNEE_ | 签收人 | nvarchar(64) | √ | 节点签收人 | |
START_TIME_ | 开始时间 | datetime | 2013-09-15 11:30:00 | ||
END_TIME_ | 结束时间 | datetime | √ | 2013-09-15 11:30:00 | |
DURATION_ | 耗时 | numeric(19,0) | √ | 毫秒值 |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
PROC_DEF_ID_ | varchar(64) | NO | |
PROC_INST_ID_ | varchar(64) | NO | |
EXECUTION_ID_ | varchar(64) | NO | |
ACT_ID_ | varchar(255) | NO | |
TASK_ID_ | varchar(64) | YES | |
CALL_PROC_INST_ID_ | varchar(64) | YES | |
ACT_NAME_ | varchar(255) | YES | |
ACT_TYPE_ | varchar(255) | NO | |
ASSIGNEE_ | varchar(255) | YES | |
START_TIME_ | datetime | NO | |
END_TIME_ | datetime | YES | |
DURATION_ | bigint(20) | YES | |
DELETE_REASON_ | varchar(4000) | YES | |
TENANT_ID_ | varchar(255) | YES |
ACT_HI_ATTACHMENTA 历史附件表
历史附件表( act_hi_attachment )
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | 主键ID | |
REV_ | 乐观锁 | integer | √ | Version | |
USER_ID_ | 用户ID | nvarchar(255) | √ | 用户ID | |
NAME_ | 名称 | nvarchar(255) | √ | 附件名称 | |
DESCRIPTION_ | 描述 | nvarchar(4000) | √ | 描述 | |
TYPE_ | 类型 | nvarchar(255) | √ | 附件类型 | |
TASK_ID_ | 任务实例ID | nvarchar(64) | √ | 节点实例ID | |
PROC_INST_ID_ | 流程实例ID | nvarchar(64) | √ | 流程实例ID | |
URL_ | URL_ | nvarchar(4000) | √ | 附件地址 | |
CONTENT_ID_ | 字节表的ID | nvarchar(64) | √ | ACT_GE_BYTEARRAY的ID |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
USER_ID_ | varchar(255) | YES | 附件对应的用户ID |
NAME_ | varchar(255) | YES | 附件名称 |
DESCRIPTION_ | varchar(4000) | YES | 附件描述 |
TYPE_ | varchar(255) | YES | 附件类型 |
TASK_ID_ | varchar(64) | YES | 附件对应的任务ID |
PROC_INST_ID_ | varchar(64) | YES | 对应的流程实例ID |
URL_ | varchar(4000) | YES | 链接到该附件的URL |
CONTENT_ID_ | varchar(64) | YES | 附件内容ID,附件内容会保存到资源表中,该字段记录资源数据ID |
TIME_ | datetime | YES | 数据产生的时间 |
ACT_HI_COMMENT 历史意见表
历史意见表( act_hi_comment )
表实际不只保存评论数据,它还会保存某些事件数据
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | 主键ID | |
TYPE_ | 类型 | nvarchar(255) | √ | 类型:event(事件)comment(意见) | |
TIME_ | 时间 | datetime | 填写时间’ | ||
USER_ID_ | 用户ID | nvarchar(64) | √ | 填写人 | |
TASK_ID_ | 节点任务ID | nvarchar(64) | √ | 节点实例ID | |
PROC_INST_ID_ | 流程实例ID | nvarchar(255) | √ | 流程实例ID | |
ACTION_ | 行为类型 | nvarchar(64) | √ | 见备注1 | |
MESSAGE_ | 基本内容 | nvarchar(4000) | √ | 用于存放流程产生的信息,比如审批意见 | |
FULL_MSG_ | 全部内容 | varbinary(max) | √ | 附件地址 |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
TYPE_ | varchar(255) | YES | 评论的类型可以设值为event或comment表示事件记录数据或者评论数据 |
TIME_ | datetime | NO | 数据产生的时间 |
USER_ID_ | varchar(255) | YES | 产生评论数据的用户ID |
TASK_ID_ | varchar(64) | YES | 评论数据的任务ID |
PROC_INST_ID_ | varchar(64) | YES | 评论数据对应的流程实例ID |
ACTION_ | varchar(255) | YES | 该评论数据的操作标识 |
MESSAGE_ | varchar(4000) | YES | 该评论数据的信息 |
FULL_MSG_ | longblob | YES | 该字段同样记录评论数据的信息 |
ACT_HI_DETAIL 流程明细表
历史详情表( act_hi_detail )
流程中产生的变量详细,包括控制流程流转的变量,业务表单中填写的流程需要用到的变量等。
流程明细表(ACT HI DETAlL 会记录流程执行过程中的参数或者表单数据,由于在流程执行过程中,会产生大量这类数据,因此默认情况下, Activiti 不会保存流程明细数据,除非将流程引擎的历史数据( hist。可〉配置为 full
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | 主键 | |
TYPE_ | 类型 | nvarchar(255) | 见备注2 | ||
PROC_INST_ID_ | 流程实例ID | nvarchar(64) | √ | 流程实例ID | |
EXECUTION_ID_ | 执行实例ID | nvarchar(64) | √ | 执行实例ID | |
TASK_ID_ | 任务实例ID | nvarchar(64) | √ | 任务实例ID | |
ACT_INST_ID_ | 节点实例ID | nvarchar(64) | √ | ACT_HI_ACTINST表的ID | |
NAME_ | 名称 | nvarchar(255) | 名称 | ||
VAR_TYPE_ | 参数类型 | nvarchar(255) | √ | 见备注3 | |
REV_ | 乐观锁 | int | √ | Version | |
TIME_ | 时间戳 | datetime | 创建时间 | ||
BYTEARRAY_ID_ | 字节表ID | nvarchar | √ | ACT_GE_BYTEARRAY表的ID | |
DOUBLE_ | DOUBLE_ | double precision | √ | 存储变量类型为Double | |
LONG_ | LONG_ | numeric | √ | 存储变量类型为long | |
TEXT_ | TEXT_ | nvarchar | √ | 存储变量值类型为String | |
TEXT2_ | TEXT2_ | nvarchar | √ | 此处存储的是JPA持久化对象时,才会有值。此值为对象ID |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
TYPE_ | varchar(255) | NO | |
PROC_INST_ID_ | varchar(64) | YES | |
EXECUTION_ID_ | varchar(64) | YES | |
TASK_ID_ | varchar(64) | YES | |
ACT_INST_ID_ | varchar(64) | YES | |
NAME_ | varchar(255) | NO | |
VAR_TYPE_ | varchar(255) | YES | |
REV_ | int(11) | YES | |
TIME_ | datetime | NO | |
BYTEARRAY_ID_ | varchar(64) | YES | |
DOUBLE_ | double | YES | |
LONG_ | bigint(20) | YES | |
TEXT_ | varchar(4000) | YES | |
TEXT2_ | varchar(4000) | YES |
ACT_HI_IDENTITYLINK 历史流程人员表
历史流程人员表( act_ru_identitylink )
任务参与者数据表。主要存储历史节点参与者的信息
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | ID_ | |
GROUP_ID_ | 组ID | nvarchar(255) | √ | 组ID | |
TYPE_ | 类型 | nvarchar(255) | √ | 备注4 | |
USER_ID_ | 用户ID | nvarchar(255) | √ | 用户ID | |
TASK_ID_ | 节点实例ID | nvarchar(64) | √ | 节点实例ID | |
PROC_INST_ID_ | 流程实例ID | nvarchar(64) | √ | 流程实例ID |
ACT_HI_PROCINST 流程实例表
历史流程实例表(act_hi_procinst)
只要流程被启动,就会将流程实例的数据写入 ACT HI PROC ST 表中 。除了基本的流程字段外,与运行时数据表不同的是,历史流程实例表还会记录流程的开始活动ID,结束活动ID等信息
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | 主键ID | |
PROC_INST_ID_ | 流程实例ID | nvarchar(64) | 流程实例ID | ||
BUSINESS_KEY_ | 业务主键 | nvarchar(255) | √ | 业务主键,业务表单的ID | |
PROC_DEF_ID_ | 流程定义ID | nvarchar(64) | 流程定义ID | ||
START_TIME_ | 开始时间 | datetime | 开始时间 | ||
END_TIME_ | 结束时间 | datetime | √ | 结束时间 | |
DURATION_ | 耗时 | Numeric(19) | √ | 耗时 | |
START_USER_ID_ | 起草人 | nvarchar(255) | √ | 起草人 | |
START_ACT_ID_ | 开始节点ID | nvarchar(255) | √ | 起草环节ID | |
END_ACT_ID_ | 结束节点ID | nvarchar(255) | √ | 结束环节ID | |
SUPER_PROCESS_INSTANCE_ID_ | 父流程实例ID | nvarchar(64) | √ | 父流程实例ID | |
DELETE_REASON_ | 删除原因 | nvarchar(4000) | √ | 删除原因 |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
PROC_INST_ID_ | varchar(64) | NO | |
BUSINESS_KEY_ | varchar(255) | YES | |
PROC_DEF_ID_ | varchar(64) | NO | |
START_TIME_ | datetime | NO | |
END_TIME_ | datetime | YES | |
DURATION_ | bigint(20) | YES | |
START_USER_ID_ | varchar(255) | YES | |
START_ACT_ID_ | varchar(255) | YES | 开始活动的 ID 一般是流程开始事件的ID,在流程文件中定义 |
END_ACT_ID_ | varchar(255) | YES | 流程最后一个活动的 ID一般是流程结束事件的ID,在流程文件中定义。 |
SUPER_PROCESS_INSTANCE_ID_ | varchar(64) | YES | |
DELETE_REASON_ | varchar(4000) | YES | 该流程实例被删除的原因 |
TENANT_ID_ | varchar(255) | YES | |
NAME_ | varchar(255) | YES |
ACT_HI_TASKINST 历史任务表
历史任务实例表( act_hi_taskinst )
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | 主键ID | |
PROC_DEF_ID_ | 流程定义ID | nvarchar(64) | √ | 流程定义ID | |
TASK_DEF_KEY_ | 节点定义ID | nvarchar(255) | √ | 节点定义ID | |
PROC_INST_ID_ | 流程实例ID | nvarchar(64) | √ | 流程实例ID | |
EXECUTION_ID_ | 执行实例ID | nvarchar(64) | √ | 执行实例ID | |
NAME_ | 名称 | varchar(255) | √ | 名称 | |
PARENT_TASK_ID_ | 父节点实例ID | nvarchar(64) | √ | 父节点实例ID | |
DESCRIPTION_ | 描述 | nvarchar(400) | √ | 描述 | |
OWNER_ | 实际签收人 任务的拥有者 | nvarchar(255) | √ | 签收人(默认为空,只有在委托时才有值) | |
ASSIGNEE_ | 签收人或被委托 | nvarchar(255) | √ | 签收人或被委托 | |
START_TIME_ | 开始时间 | datetime | 开始时间 | ||
CLAIM_TIME_ | 提醒时间 | datetime | √ | 提醒时间 | |
END_TIME_ | 结束时间 | datetime | √ | 结束时间 | |
DURATION_ | 耗时 | numeric(19) | √ | 耗时 | |
DELETE_REASON_ | 删除原因 | nvarchar(4000) | √ | 删除原因(completed,deleted) | |
PRIORITY_ | 优先级别 | int | √ | 优先级别 | |
DUE_DATE_ | 过期时间 | datetime | √ | 过期时间,表明任务应在多长时间内完成 | |
FORM_KEY_ | 节点定义的formkey | nvarchar(255) | √ | desinger节点定义的form_key属性 |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
PROC_DEF_ID_ | varchar(64) | YES | |
TASK_DEF_KEY_ | varchar(255) | YES | |
PROC_INST_ID_ | varchar(64) | YES | |
EXECUTION_ID_ | varchar(64) | YES | |
NAME_ | varchar(255) | YES | |
PARENT_TASK_ID_ | varchar(64) | YES | |
DESCRIPTION_ | varchar(4000) | YES | |
OWNER_ | varchar(255) | YES | |
ASSIGNEE_ | varchar(255) | YES | |
START_TIME_ | datetime | NO | |
CLAIM_TIME_ | datetime | YES | |
END_TIME_ | datetime | YES | |
DURATION_ | bigint(20) | YES | |
DELETE_REASON_ | varchar(4000) | YES | |
PRIORITY_ | int(11) | YES | |
DUE_DATE_ | datetime | YES | |
FORM_KEY_ | varchar(255) | YES | |
CATEGORY_ | varchar(255) | YES | |
TENANT_ID_ | varchar(255) | YES |
ACT_HI_VARINST 历史变量表
历史变量表( act_hi_varinst )
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | ID_ | |
PROC_INST_ID_ | 流程实例ID | nvarchar(64) | √ | 流程实例ID | |
EXECUTION_ID_ | 执行实例ID | nvarchar(255) | √ | 执行实例ID | |
TASK_ID_ | 任务实例ID | nvarchar(64) | √ | 任务实例ID | |
NAME_ | 名称 | nvarchar(64) | 参数名称(英文) | ||
VAR_TYPE_ | 参数类型 | varchar(255) | √ | 备注5 | |
REV_ | 乐观锁 | nvarchar(64) | √ | 乐观锁 Version | |
BYTEARRAY_ID_ | 字节表ID | nvarchar(400) | √ | ACT_GE_BYTEARRAY表的主键 | |
DOUBLE_ | DOUBLE_ | nvarchar(255) | √ | 存储DoubleType类型的数据 | |
LONG_ | LONG_ | nvarchar(255) | √ | 存储LongType类型的数据 | |
TEXT_ | TEXT_ | datetime | √ | 备注6 | |
TEXT2_ | TEXT2_ | datetime | √ | 此处存储的是JPA持久化对象时,才会有值。此值为对象ID |
用户用户组表 (ACT_ID_)
Activiti 整个身份数据模块,可以独立于流程引擎而存在 有关身份数据的几张表没有保存与流程相关的数据及关联。身份表名称以 ACT_ID 开头,表名中的 是单词 identity的缩写。
ACT_ID_GROUP 用户组信息表
用户组信息表( act_id_group )
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | 主键ID | |
REV_ | 乐观锁 | int | √ | 乐观锁Version | |
NAME_ | 名称 | nvarchar(255) | √ | 组名称 | |
TYPE_ | 类型 | nvarchar(255) | √ | 类型 |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
NAME_ | varchar(255) | YES | 用户组名称 |
TYPE_ | varchar(255) | YES | 用户组类型,类型不由activiti提供,但是在某些业务中, Activiti 会根据该字段的值进行查询,字段值由 Activiti 定如 Activiti webService |
ACT_ID_INFO 用户扩展信息表
用户扩展信息表( act_id_info )
Activiti 将用户、用户账号和用户信息分为三种数据,其中用户表保存用户的数据,而用
户账号和用户信息,则被保存到 ACT_ID_INFO 表中
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | 主键ID | |
REV_ | 乐观锁 | int | √ | 乐观锁Version | |
USER_ID_ | 用户ID | nvarchar(64) | √ | ||
TYPE_ | 类型 | nvarchar(64) | √ | ||
KEY_ | nvarchar(255) | √ | |||
VALUE_ | nvarchar(255) | √ | |||
PASSWORD_ | Image | √ | |||
PARENT_ID_ | nvarchar(255) | √ |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
USER_ID_ | varchar(64) | YES | 对应用户表的数据ID(没有强制做外键关联) |
TYPE_ | varchar(64) | YES | 信息类型,当前可以设置用户账号(account)、用户信息(userinfo)和NULL三种值 |
KEY_ | varchar(255) | YES | 数据的键。可以根据改键来查找用户信息的值 |
VALUE_ | varchar(255) | YES | 数据的值 |
PASSWORD_ | longblob | YES | 用户账号的密码字段 |
PARENT_ID_ | varchar(255) | YES | 该信息的父信息ID,如果一条数据设置了父信息ID,则表示该数据是用户账号(信息)的明细数据,例如一个账号有激活日期,那么激活日期就是该账号的明细数据,此处使用了自关联来实现。 |
ACT_ID_MEMBERSHIP 用户与分组对应信息表
用户与分组对应信息表( act_id_membership )
用来保存用户的分组信息。
一个用户组下有多个用户, 一个用户可以属于不同的用户组,那么这种多对多的关系,就
使用关系表来进行描述,关系表为 ACT ID ME IBERSHIP ,只有两个字段。需要注意的是, ACT_ID_MEMBERSHI的两个字段均做了外键约束 写入该表的数据,必须要有用户和用户组数据与之关联。
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
USER_ID | 用户ID | nvarchar(64) | √ | ||
GROUP_ID | 用户组ID | nvarchar(64) | √ |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
USER_ID_ | varchar(64) | NO | |
GROUP_ID_ | varchar(64) | NO |
ACT_ID_USER 用户信息表
用户信息表( act_id_user )
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | 主键ID | |
REV_ | 乐观锁 | int | √ | 乐观锁Version | |
FIRST_ | 姓 | nvarchar(255) | √ | ||
LAST_ | 名 | nvarchar(255) | √ | ||
EMAIL_ | EMAIL_ | nvarchar(255) | √ | ||
PWD_ | 密码 | nvarchar(255) | √ | ||
PICTURE_ID_ | 图片ID | nvarchar(64) | √ |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
FIRST_ | varchar(255) | YES | 人名 |
LAST_ | varchar(255) | YES | 姓式 |
EMAIL_ | varchar(255) | YES | 用户邮箱 |
PWD_ | varchar(255) | YES | 用户密码 |
PICTURE_ID_ | varchar(64) | YES | 用户图片,对应资源中的数据ID |
流程定义表 (ACT_RE_)
ACT_RE_DEPLOYMENT 流程部署表
部署信息表( act_re_deployment )
部署流程定义时需要被持久化保存下来的信息。
在 Activiti 中,一次部署可以添加多个资源,资源会被保存到资源表中(act_ge_bytearray),而对于部署,则部署信息会被保存到部署表中
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | 主键ID | |
NAME_ | 部署名称 | nvarchar(255) | √ | 部署文件名 | |
CATEGORY_ | 分类 | nvarchar(255) | √ | 类别 | |
DEPLOY_TIME_ | 部署时间 | datetime | √ | 部署时间 |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
NAME_ | varchar(255) | YES | 部署的名称 |
CATEGORY_ | varchar(255) | YES | |
KEY_ | varchar(255) | YES | |
TENANT_ID_ | varchar(255) | YES | |
DEPLOY_TIME_ | timestamp | YES | 部署的时间 |
ENGINE_VERSION_ | varchar(255) | YES |
ACT_RE_MODEL 流程设计模型部署表
流程设计模型部署表( act_re_model )
流程设计器设计流程后,保存数据到该表。
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | ID_ | |
REV_ | 乐观锁 | int | √ | 乐观锁 | |
NAME_ | 名称 | nvarchar(255) | √ | 名称 | |
KEY_ | KEY_ | nvarchar(255) | √ | 分类 | |
CATEGORY_ | 分类 | nvarchar(255) | √ | 分类 | |
CREATE_TIME_ | 创建时间 | datetime | √ | 创建时间 | |
LAST_UPDATE_TIME_ | 最新修改时间 | datetime | √ | 最新修改时间 | |
VERSION_ | 版本 | int | √ | 版本 | |
META_INFO_ | META_INFO_ | nvarchar(255) | √ | 以json格式保存流程定义的信息 | |
DEPLOYMENT_ID_ | 部署ID | nvarchar(255) | √ | 部署ID | |
EDITOR_SOURCE_VALUE_ID_ | datetime | √ | |||
EDITOR_SOURCE_EXTRA_VALUE_ID_ | datetime | √ |
ACT_RE_PROCDEF 流程定义表
流程定义数据表( act_re_procdef )
业务流程定义数据表。此表和 ACT_RE_DEPLOYMENT 是多对一的关系,即,一个部署的bar包里可能包含多个流程定义文件,每个流程定义文件都会有一条记录在 ACT_REPROCDEF 表内,每个流程定义的数据,都会对于 ACT_GE_BYTEARRAY 表内的一个资源文件和 PNG 图片文件。和 ACT_GE_BYTEARRAY 的关联是通过程序用ACT_GE_BYTEARRAY.NAME 与 ACT_RE_PROCDEF.NAME 完成的,在数据库表结构中没有体现。
Activiti 在部署添加资源时,如果发布部署的文件是流程文件( .bpnn 或者.BPMN 20.xml),
则除了会解析这些流程文件,将内容保存到资源表外,还会解析流程文件的内容,形成特定的流程定义数据,写入流程定义表( ACT_RE_PROCDEF )中
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | ID_ | |
REV_ | 乐观锁 | int | √ | 乐观锁 | |
CATEGORY_ | 分类 | nvarchar(255) | √ | 流程定义的Namespace就是类别 | |
NAME_ | 名称 | nvarchar(255) | √ | 名称 | |
KEY_ | 定义的KEY | nvarchar(255) | 流程定义ID | ||
VERSION_ | 版本 | int | 版本 | ||
DEPLOYMENT_ID_ | 部署表ID | nvarchar(64) | √ | 部署表ID | |
RESOURCE_NAME_ | bpmn文件名称 | nvarchar(4000) | √ | 流程bpmn文件名称 | |
DGRM_RESOURCE_NAME_ | png图片名称 | nvarchar(4000) | √ | 流程图片名称 | |
DESCRIPTION_ | 描述 | nvarchar(4000) | √ | 描述 | |
HAS_START_FORM_KEY_ | 是否存在开始节点formKey | tinyint | √ | start节点是否存在formKey 0否 1是 | |
SUSPENSION_STATE_ | 是否挂起 | tinyint | √ | 1 激活 2挂起 |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
CATEGORY_ | varchar(255) | YES | 流程定义的分类 |
NAME_ | varchar(255) | YES | 流程定义名称 |
KEY_ | varchar(255) | NO | 流程定义的key |
VERSION_ | int(11) | NO | |
DEPLOYMENT_ID_ | varchar(64) | YES | 流程定义对应的部署数据ID |
RESOURCE_NAME_ | varchar(4000) | YES | 流程定义对应的资源名称 |
DGRM_RESOURCE_NAME_ | varchar(4000) | YES | 流程定义对应的流程图资源名称 |
DESCRIPTION_ | varchar(4000) | YES | |
HAS_START_FORM_KEY_ | tinyint(4) | YES | |
HAS_GRAPHICAL_NOTATION_ | tinyint(4) | YES | |
SUSPENSION_STATE_ | int(11) | YES | 表示流程定义的状态是激活还是终止,1:激活,2:终止,如果流程定义状态是终止状态则不能启动该流程 |
TENANT_ID_ | varchar(255) | YES | |
ENGINE_VERSION_ | varchar(255) | YES |
运行实例表 (ACT_RU_)
运行时数据表用来保存流程在运行过程中所产生的数据,例如流程实例、执行流、任务等
运行时数据表的名称以 ACT_RU 开头,“RU ”是单词 runtime 的缩写。
ACT_RU_EVENT_SUBSCR 事件描述表
事件描述表( act_ru_event_subscr )
如果流程到达某类事件节点, Activiti 会往ACT_RUN_EVENT_SUBSCR表中加入事件描述数据,这些事件描述数据将会决定流程事件的触发。
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | 事件ID | nvarchar(64) | √ | 事件ID | |
REV_ | 版本 | int | √ | 乐观锁Version | |
EVENT_TYPE_ | 事件类型 | nvarchar(255) | 事件类型 | ||
EVENT_NAME_ | 事件名称 | nvarchar(255) | √ | 事件名称 | |
EXECUTION_ID_ | 执行实例ID | nvarchar(64) | √ | 执行实例ID | |
PROC_INST_ID_ | 流程实例ID | nvarchar(64) | √ | 流程实例ID | |
ACTIVITY_ID_ | 活动实例ID | nvarchar(64) | √ | 活动实例ID | |
CONFIGURATION_ | 配置 | nvarchar(255) | √ | 配置 | |
CREATED_ | 是否创建 | datetime | 默认值 当前系统时间戳CURRENT_TIMESTAMP |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
EVENT_TYPE_ | varchar(255) | NO | 事件类型,不同事件会产生不同类型的事件描述,并不是所有的事件都会产生时间描述 |
EVENT_NAME_ | varchar(255) | YES | 事件名称,在流程文件中定义 |
EXECUTION_ID_ | varchar(64) | YES | 事件所在的执行流ID |
PROC_INST_ID_ | varchar(64) | YES | 时间所在的流程实例ID |
ACTIVITY_ID_ | varchar(64) | YES | 具体事件的ID,在流程文件中定义 |
CONFIGURATION_ | varchar(255) | YES | 事件的配置属性,该字段中有可能存放流程定义ID,执行流ID,或者其他数据 |
CREATED_ | timestamp | NO | |
PROC_DEF_ID_ | varchar(64) | YES | |
TENANT_ID_ | varchar(255) | YES |
ACT_RU_EXECUTION 运行时流程执行实例表
运行时流程执行实例表( act_ru_execution )
流程启动后,会产生一个流程实例,同时会产生相应的执行流,流程实例和执行流数据均
被保存在 ACT_RU_EXECUTION 表中,如果一个流程实例只有一条执行流,那么该表中只产
生一条数据,该数据既表示执行流,也表示流程实例。
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | ID_ | |
REV_ | 乐观锁 | int | √ | 乐观锁 | |
PROC_INST_ID_ | 流程实例ID | nvarchar(64) | 流程实例ID | ||
BUSINESS_KEY_ | 业务主键ID | nvarchar(255) | √ | 业务主键ID | |
PARENT_ID_ | 父节点实例ID | nvarchar(64) | √ | 父节点实例ID | |
PROC_DEF_ID_ | 流程定义ID | nvarchar(64) | √ | 流程定义ID | |
SUPER_EXEC_ | SUPER_EXEC_ | nvarchar(64) | √ | SUPER_EXEC_ | |
ACT_ID_ | 节点实例ID | nvarchar(255) | √ | 节点实例ID即ACT_HI_ACTINST中ID | |
IS_ACTIVE_ | 是否存活 | tinyint | √ | 是否存活 | |
IS_CONCURRENT_ | 是否并行 | tinyint | √ | 是否为并行(true/false) | |
IS_SCOPE_ | IS_SCOPE_ | tinyint | √ | IS_SCOPE_ | |
IS_EVENT_SCOPE_ | IS_EVENT_SCOPE_ | tinyint | √ | IS_EVENT_SCOPE_ | |
SUSPENSION_STATE_ | 是否挂起 | tinyint | √ | 挂起状态 1激活 2挂起 | |
CACHED_ENT_STATE_ | int | √ |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
PROC_INST_ID_ | varchar(64) | YES | 流程实例ID,一个流程实例可能产生多个执行流,该字段表示执行流所属的流程实例 |
BUSINESS_KEY_ | varchar(255) | YES | 启动流程时指定的业务主键 |
PARENT_ID_ | varchar(64) | YES | 父执行流的ID,一个流程实例可能会产生多个执行流,该字段表示父执行ID |
PROC_DEF_ID_ | varchar(64) | YES | 流程定义数据ID |
SUPER_EXEC_ | varchar(64) | YES | |
ROOT_PROC_INST_ID_ | varchar(64) | YES | |
ACT_ID_ | varchar(255) | YES | 当前执行流行为的ID,ID在流程文件中定义 |
IS_ACTIVE_ | tinyint(4) | YES | 该执行流是否活跃的标识 |
IS_CONCURRENT_ | tinyint(4) | YES | 执行流是否正在并行 |
IS_SCOPE_ | tinyint(4) | YES | |
IS_EVENT_SCOPE_ | tinyint(4) | YES | |
IS_MI_ROOT_ | tinyint(4) | YES | |
SUSPENSION_STATE_ | int(11) | YES | 标识流程的中断状态 |
CACHED_ENT_STATE_ | int(11) | YES | |
TENANT_ID_ | varchar(255) | YES | |
NAME_ | varchar(255) | YES | |
START_TIME_ | datetime | YES | |
START_USER_ID_ | varchar(255) | YES | |
LOCK_TIME_ | timestamp | YES | |
IS_COUNT_ENABLED_ | tinyint(4) | YES | |
EVT_SUBSCR_COUNT_ | int(11) | YES | |
TASK_COUNT_ | int(11) | YES | |
JOB_COUNT_ | int(11) | YES | |
TIMER_JOB_COUNT_ | int(11) | YES | |
SUSP_JOB_COUNT_ | int(11) | YES | |
DEADLETTER_JOB_COUNT_ | int(11) | YES | |
VAR_COUNT_ | int(11) | YES | |
ID_LINK_COUNT_ | int(11) | YES |
ACT_RU_IDENTITYLINK 运行时流程人员表
运行时流程人员表( act_ru_identitylink )
任务参与者数据表。主要存储当前节点参与者的信息。
流程与身份关系,用户或者用户组与流程数据之间的关系
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | ID_ | |
REV_ | 乐观锁 | int | √ | 乐观锁 | |
GROUP_ID_ | 组ID | nvarchar(64) | √ | 组ID | |
TYPE_ | 类型 | nvarchar(255) | √ | 备注7 | |
USER_ID_ | 用户ID | nvarchar(64) | √ | 用户ID | |
TASK_ID_ | 节点实例ID | nvarchar(64) | √ | 节点实例ID | |
PROC_INST_ID_ | 流程实例ID | nvarchar(64) | √ | 流程实例ID | |
PROC_DEF_ID_ | 流程定义ID | nvarchar(255) | √ | 流程定义ID |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
GROUP_ID_ | varchar(255) | YES | 该关系数据中的用户组ID |
TYPE_ | varchar(255) | YES | 该关系数据的类型,assignee(指派人或组),candidate(候选人或组),owner(拥有人) |
USER_ID_ | varchar(255) | YES | 关系数据中的用户ID |
TASK_ID_ | varchar(64) | YES | 关系数据中的任务ID |
PROC_INST_ID_ | varchar(64) | YES | 关系数据中的流程实例ID |
PROC_DEF_ID_ | varchar(64) | YES | 关系数据中的流程定义ID |
ACT_RU_JOB 运行时定时任务数据表
运行时定时任务数据表( act_ru_job )
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | 标识 | nvarchar(64) | √ | 标识 | |
REV_ | 版本 | int | √ | 版本 | |
TYPE_ | 类型 | nvarchar(255) | 类型 | ||
LOCK_EXP_TIME_ | 锁定释放时间 | datetime | √ | 锁定释放时间 | |
LOCK_OWNER_ | 挂起者 | nvarchar(255) | √ | 挂起者 | |
EXCLUSIVE_ | bit | √ | |||
EXECUTION_ID_ | 执行实例ID | nvarchar(64) | √ | 执行实例ID | |
PROCESS_INSTANCE_ID_ | 流程实例ID | nvarchar(64) | √ | 流程实例ID | |
PROC_DEF_ID_ | 流程定义ID | nvarchar(64) | √ | 流程定义ID | |
RETRIES_ | int | √ | |||
EXCEPTION_STACK_ID_ | 异常信息ID | nvarchar(64) | √ | 异常信息ID | |
EXCEPTION_MSG_ | 异常信息 | nvarchar(4000) | √ | 异常信息 | |
DUEDATE_ | 到期时间 | datetime | √ | 到期时间 | |
REPEAT_ | 重复 | nvarchar(255) | √ | 重复 | |
HANDLER_TYPE_ | 处理类型 | nvarchar(255) | √ | 处理类型 | |
HANDLER_CFG_ | nvarchar(4000) | √ | 标识 |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
TYPE_ | varchar(255) | NO | |
LOCK_EXP_TIME_ | timestamp | YES | |
LOCK_OWNER_ | varchar(255) | YES | |
EXCLUSIVE_ | tinyint(1) | YES | |
EXECUTION_ID_ | varchar(64) | YES | |
PROCESS_INSTANCE_ID_ | varchar(64) | YES | |
PROC_DEF_ID_ | varchar(64) | YES | |
RETRIES_ | int(11) | YES | |
EXCEPTION_STACK_ID_ | varchar(64) | YES | |
EXCEPTION_MSG_ | varchar(4000) | YES | |
DUEDATE_ | timestamp | YES | |
REPEAT_ | varchar(255) | YES | |
HANDLER_TYPE_ | varchar(255) | YES | |
HANDLER_CFG_ | varchar(4000) | YES | |
TENANT_ID_ | varchar(255) | YES |
ACT_RU_TASK 运行时任务节点表
运行时任务节点表( act_ru_task )
流程在运行过程中所产生的任务数据保存在 ACT_RU_TASK 表中
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | ID_ | |
REV_ | 乐观锁 | int | √ | 乐观锁 | |
EXECUTION_ID_ | 执行实例ID | nvarchar(64) | √ | 执行实例ID | |
PROC_INST_ID_ | 流程实例ID | nvarchar(64) | √ | 流程实例ID | |
PROC_DEF_ID_ | 流程定义ID | nvarchar(64) | √ | 流程定义ID | |
NAME_ | 节点定义名称 | nvarchar(255) | √ | 节点定义名称 | |
PARENT_TASK_ID_ | 父节点实例ID | nvarchar(64) | √ | 父节点实例ID | |
DESCRIPTION_ | 节点定义描述 | nvarchar(4000) | √ | 节点定义描述 | |
TASK_DEF_KEY_ | 节点定义的KEY | nvarchar(255) | √ | 任务定义的ID | |
OWNER_ | 实际签收人 | nvarchar(255) | √ | 拥有者(一般情况下为空,只有在委托时才有值) | |
ASSIGNEE_ | 签收人或委托人 | nvarchar(255) | √ | 签收人或委托人 | |
DELEGATION_ | 委托类型 | nvarchar(64) | √ | 备注8 | |
PRIORITY_ | 优先级别 | int | √ | 优先级别,默认为:50 | |
CREATE_TIME_ | 创建时间 | datetime | √ | 创建时间 | |
DUE_DATE_ | 过期时间 | datetime | √ | 耗时 | |
SUSPENSION_STATE_ | 是否挂起 | int | √ | 1代表激活 2代表挂起 |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
EXECUTION_ID_ | varchar(64) | YES | 任务所在的执行流ID |
PROC_INST_ID_ | varchar(64) | YES | 对应的流程实例ID |
PROC_DEF_ID_ | varchar(64) | YES | 对应流程定义数据ID |
NAME_ | varchar(255) | YES | 任务名称,在流程文件中定义 |
PARENT_TASK_ID_ | varchar(64) | YES | |
DESCRIPTION_ | varchar(4000) | YES | 任务描述,在流程文件中配置 |
TASK_DEF_KEY_ | varchar(255) | YES | 任务定义的ID值,在流程文件中定义 |
OWNER_ | varchar(255) | YES | 任务拥有人,没有做外键关联 |
ASSIGNEE_ | varchar(255) | YES | 被指派执行该任务的人,没有做外键关联 |
DELEGATION_ | varchar(64) | YES | |
PRIORITY_ | int(11) | YES | 任务优先级数值 |
CREATE_TIME_ | timestamp | YES | |
DUE_DATE_ | datetime | YES | 任务预定日期 |
CATEGORY_ | varchar(255) | YES | |
SUSPENSION_STATE_ | int(11) | YES | |
TENANT_ID_ | varchar(255) | YES | |
FORM_KEY_ | varchar(255) | YES | |
CLAIM_TIME_ | datetime | YES |
ACT_RU_VARIABLE 运行时流程变量数据表
运行时流程变量数据表( act_ru_variable )
Activiti 提供了ACT_RU_VAEIABLE表来存放流程中的参数,这类参数包括流程实例参数、执行流参数和任务参数,参数有可能会有多种类型
字段名称 | 字段描述 | 数据类型 | 主键 | 为空 | 取值说明 |
---|---|---|---|---|---|
ID_ | ID_ | nvarchar(64) | √ | 主键标识 | |
REV_ | 乐观锁 | int | √ | 乐观锁 | |
TYPE_ | 类型 | nvarchar(255) | 备注9 | ||
NAME_ | 名称 | nvarchar(255) | 变量名称 | ||
EXECUTION_ID_ | 执行实例ID | nvarchar(64) | √ | 执行的ID | |
PROC_INST_ID_ | 流程实例ID | nvarchar(64) | √ | 流程实例ID | |
TASK_ID_ | 节点实例ID | nvarchar(64) | √ | 节点实例ID(Local) | |
BYTEARRAY_ID_ | 字节表ID | nvarchar(64) | √ | 字节表的ID(ACT_GE_BYTEARRAY) | |
DOUBLE_ | DOUBLE_ | float | √ | 存储变量类型为Double | |
LONG_ | LONG_ | numeric(19) | √ | 存储变量类型为long | |
TEXT_ | TEXT_ | nvarchar(4000) | √ | ‘存储变量值类型为String 如此处存储持久化对象时,值jpa对象的class | |
TEXT2_ | TEXT2_ | nvarchar(4000) | √ | 此处存储的是JPA持久化对象时,才会有值。此值为对象ID |
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
TYPE_ | varchar(255) | NO | 参数类型,该字段值可以为:boolean、bytes、serializable、date、double、integer、jpa-entity、long、null、short、string,这些字段值均为activiti提供,还可以通过扩展来自定义参数类型 |
NAME_ | varchar(255) | NO | 参数名称 |
EXECUTION_ID_ | varchar(64) | YES | 该参数对应的执行ID,NULL |
PROC_INST_ID_ | varchar(64) | YES | 该参数对应的流程实例ID,NULL |
TASK_ID_ | varchar(64) | YES | 如果该参数是任务参数,就需要设置任务ID |
BYTEARRAY_ID_ | varchar(64) | YES | 如果参数值是序列化对象,那么可以将该对象作为资源保存到资源表中,该字段保存资源表中的数据ID |
DOUBLE_ | double | YES | 参数类型为double的话则值会保存在该字段中 |
LONG_ | bigint(20) | YES | 参数类型为long的话则值会保存在该字段中 |
TEXT_ | varchar(4000) | YES | 保存文本类型的参数 |
TEXT2_ | varchar(4000) | YES |
工作数据表(以下表结构暂时未整理)
ACT_RU_DEADLETTER 无法执行工作表
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
TYPE_ | varchar(255) | NO | |
EXCLUSIVE_ | tinyint(1) | YES | |
EXECUTION_ID_ | varchar(64) | YES | |
PROCESS_INSTANCE_ID_ | varchar(64) | YES | |
PROC_DEF_ID_ | varchar(64) | YES | |
EXCEPTION_STACK_ID_ | varchar(64) | YES | |
EXCEPTION_MSG_ | varchar(4000) | YES | |
DUEDATE_ | timestamp | YES | |
REPEAT_ | varchar(255) | YES | |
HANDLER_TYPE_ | varchar(255) | YES | |
HANDLER_CFG_ | varchar(4000) | YES | |
TENANT_ID_ | varchar(255) | YES |
ACT_RU_SUSPENDED 中断工作表
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
TYPE_ | varchar(255) | NO | |
EXCLUSIVE_ | tinyint(1) | YES | |
EXECUTION_ID_ | varchar(64) | YES | |
PROCESS_INSTANCE_ID_ | varchar(64) | YES | |
PROC_DEF_ID_ | varchar(64) | YES | |
RETRIES_ | int(11) | YES | |
EXCEPTION_STACK_ID_ | varchar(64) | YES | |
EXCEPTION_MSG_ | varchar(4000) | YES | |
DUEDATE_ | timestamp | YES | |
REPEAT_ | varchar(255) | YES | |
HANDLER_TYPE_ | varchar(255) | YES | |
HANDLER_CFG_ | varchar(4000) | YES | |
TENANT_ID_ | varchar(255) | YES |
ACT_RU_TIMER_JOB 定时器工作表
字段 | 类型 | NULL | 备注 |
---|---|---|---|
ID_ | varchar(64) | NO | |
REV_ | int(11) | YES | |
TYPE_ | varchar(255) | NO | |
LOCK_EXP_TIME_ | timestamp | YES | |
LOCK_OWNER_ | varchar(255) | YES | |
EXCLUSIVE_ | tinyint(1) | YES | |
EXECUTION_ID_ | varchar(64) | YES | |
PROCESS_INSTANCE_ID_ | varchar(64) | YES | |
PROC_DEF_ID_ | varchar(64) | YES | |
RETRIES_ | int(11) | YES | |
EXCEPTION_STACK_ID_ | varchar(64) | YES | |
EXCEPTION_MSG_ | varchar(4000) | YES | |
DUEDATE_ | timestamp | YES | |
REPEAT_ | varchar(255) | YES | |
HANDLER_TYPE_ | varchar(255) | YES | |
HANDLER_CFG_ | varchar(4000) | YES | |
TENANT_ID_ | varchar(255) | YES |
其他
ACT_EVT_LOG 事件日志表
Activiti 事件日志表( act_evt_log )
字段名称 | 字段描述 | 数据类型 | 为空 | 取值说明 |
---|---|---|---|---|
LOG_NR_ | 主键 | bigint(20) | NO | 自增长 |
TYPE_ | 类型 | varchar(64) | YES | 类型 |
PROC_DEF_ID_ | 流程定义ID | varchar(64) | YES | 流程定义ID |
PROC_INST_ID_ | 流程实例ID | varchar(64) | YES | 流程实例ID |
EXECUTION_ID_ | 执行实例ID | varchar(64) | YES | 执行实例ID |
TASK_ID_ | 节点实例ID | varchar(64) | YES | 节点实例ID |
TIME_STAMP_ | 时间戳 | timestamp(3) | NO | 时间戳 |
USER_ID_ | 用户ID | varchar(255) | YES | 用户ID |
DATA_ | 一些额外参数 | longblob | YES | 例如 IP地址 等。 |
LOCK_OWNER_ | 挂起者 | varchar(255) | YES | 暂时没有用到 |
LOCK_TIME_ | 挂起时间 | timestamp(3) | YES | 暂时没有用到 |
IS_PROCESSED_ | 是否处理过了 | tinyint(4) | YES | 暂时没有用到 |
ACT_PROCDEF_INFO 流程定义扩展表
关联ACTGE_BYTEARRAY与PROC_DEF_ID表。
字段名称 | 字段描述 | 数据类型 | 为空 | 取值说明 |
---|---|---|---|---|
ID_ | 主键 | varchar(64) | NO | 主键ID |
PROC_DEF_ID_ | 流程定义ID | varchar(64) | NO | 流程定义ID |
REV_ | 乐观锁 | int(11) | YES | 默认值 NULL,version版本 |
INFO_JSON_ID_ | 主键 | varchar(64) | YES | ACT_GE_BYTEARRAY的ID |
DMN规则引擎数据表
决策部署表,act_dmn_deployment
保存决策数据,类似于流程定义部署,每一次部署,可以添加多份决策文件,向部署表中写入一条部署数据。
只启动流程引擎,并不会创建规则引擎表。
字段 | 注释 |
---|---|
NAME_ | 部署名称 |
CATEGORY_ | 部署的目录名称 |
PARENT_DEPLOYMENT_ID_ | 父部署ID |
决策表,act_dmn_decision_table
可以先将决策看做流程定义,决策文件中保存着决策表,部署时会解析决策文件中的决策模型并将其保存到act_dmn_decision_table中。
字段 | 注释 |
---|---|
KEY_ | 决策业务主键 |
DEPLOYMENT_ID_ | 所属的部署数据ID |
部署资源表,act_dmn_deployment_resource
规则引擎相关的资源,例如决策文件、图片等,被保存在act_dmn_deployment_resource表中,该表类似于流程引擎的资源表。
字段 | 注释 |
---|---|
NAME_ | 资源名称 |
DEPLOYMENT_ID_ | 所属的部署数据ID |
RESOURCE_BYTES_ | 资源内容,longblob类型。 |
结语
Activiti6.0的表相较于Activiti5有所不同,但核心的内容实质上还是一样,数据库这一块没有太大差别,对于这么多表,大体过一遍有个印象即可,Activiti6.0的重点仍在核心API。
No Comments