一、Flowable数据库表命名规则
流程定义表(ACT_RE_*)RE表示repository(存储),RepositoryService接口操作的表。带此前缀的表包含的是静态信息,如流程定义,流程的资源(图片,规则)。
运行实例表(ACT_RU_*)RU表示runtime,这是运行时的表存储着流程变量,用户任务,变量,职责(job)等运行时的数据。flowable只存储实例执行期间的运行时数据,当流程实例结束时,将删除这些记录。这就保证了这些运行时的表小且快。
用户以及其用户组表(ACT_ID_*) ID表示identity(组织机构),这些表包含标识的信息,如用户,用户组等等。
流程历史记录(ACT_HI_*) HI表示history,包含着历史的相关数据,如结束的流程实例,变量,任务等等。
备注:①none: 不保存任何历史记录,可以提高系统性能;②activity:保存所有的流程实例、任务、活动信息;③audit:也是Activiti的默认级别,保存所有的流程实例、任务、活动、表单属性;④full:最完整的历史记录,除了包含audit级别的信息之外还能保存详细,例如:流程变量。
二、数据库的表结构
注意:表格中标黄的都本文已有详设的数据表
通用数据库(ACT_GE_*)各种情况都使用的数据。
数据表 |
描述 |
ACT_GE_PROPERTY |
属性表(保存流程引擎的kv键值属性)-- PropertyEntityImpl,二进制数据表,存储通用的流程定义和流程资源。 |
ACT_GE_BTYEARRAY |
资源表(存储流程定义相关的资源)-- ByteArrayEntityImpl,系统相关属性,属性数据表存储整个流程引擎级别的数据,初始化表结构时,会默认插入三条记录。 |
流程定义存储表(ACT_RE_*)
数据表 |
描述 |
ACT_RE_DEPLOYMENT |
流程部署表--DeploymentEntityImpl |
ACT_RE_PROCDEF |
流程定义信息表--ProcessDefinitionEntityImpl |
ACT_RE_MODEL |
模型信息表 (用于Web设计器)--ModelEntityImpl |
ACT_PROCDEF_INFO |
流程定义动态改变信息表-- ProcessDefinitionInfoEntityImpl |
身份数据表(ACT_ID_*)
数据表 |
描述 |
ACT_ID_USER |
用户基本信息表--UserEntityImpl |
ACT_ID_INFO |
用户扩展表--IdentityInfoEntityImpl |
ACT_ID_GROUP |
群组表(用于Web设计器)--GroupEntityImpl |
ACT_ID_MEMBERSHIP |
用户与群主关系表--MemberShipEntityImpl |
ACT_ID_BYTEARRAY |
二进制数据表(flowable)-- |
ACT_ID_PRIV |
权限表(flowable)-- |
ACT_ID_PRIV_MAPPING |
用户或组权限关系表(flowable)-- |
ACT_ID_PROPERTY |
属性表(flowable)-- |
ACT_ID_TOKEN |
系统登录日志表(flowable)-- |
运行时流程数据表(ACT_RU_*)
数据表 |
描述 |
ACT_RU_EXECUTION |
流程实例与分支执行表--ExecutionEntityImpl |
ACT_RU_TASK |
用户任务表--TaskEntityImpl |
ACT_RU_VARIABLE |
变量信息--VariableInstanceEntityImpl |
ACT_RU_IDENTITYLINK |
参与者相关信息表--IdentityLinkEntityImpl |
ACT_RU_EVENT_SUBSCR |
事件订阅表--EventSubscriptionEntityImpl |
ACT_RU_JOB |
作业表--JobEntityImpl |
ACT_RU_TIMER_JOB |
定时器表--TimerJobEntityImpl |
ACT_RU_SUSPENDED_JOB |
暂停作业表--SuspendedJobEntityImpl |
ACT_RU_DEADLETTER_JOB |
死信表--DeadLetterJobEntityImpl |
ACT_RU_HISTORY_JOB |
历史作业表(flowable)-- |
历史流程数据表(ACT_HI_*)
数据表 |
描述 |
ACT_HI_PROCINST |
历史流程实例表 --HistoricProcessInstanceEntityImpl |
ACT_HI_ACTINST |
历史节点信息表 --HistoricActivityInstanceEntityImpl |
ACT_HI_TASKINST |
历史任务表--HistoricTaskInstanceEntityImpl(只记录usertask内容) |
ACT_HI_VARINST |
历史变量--HistoricVariableInstanceEntityImpl |
ACT_HI_IDENTITYLINK |
历史参与者表--HistoricIdentityLinkEntityImpl |
ACT_HI_DETAIL |
历史的流程运行中的细节信息 --HistoricDetailEntityImpl |
ACT_HI_ATTACHMENT |
历史附件表--AttachmentEntityImpl |
ACT_HI_COMMENT |
评论表--CommentEntityImpl |
ACT_EVT_LOG |
事件日志表--EventLogEntryEntityImpl |
- 核心表
部署内容表:act_ge_bytearray
二进制数据表,存储通用的流程定义和流程资源。
值得注意的是:保存流程定义图片和xml、Serializable(序列化)的变量,即保存所有二进制数据,特别注意类路径部署时候,不要把svn等隐藏文件或者其他与流程无关的文件也一起部署到该表中,会造成一些错误(可能导致流程定义无法删除)
字段 |
字段名称 |
默认值 |
是否为空 |
数据类型 |
字段长度 |
键 |
备注 |
ID_ |
主键 |
否 |
varchar |
64 |
PRI |
||
REV_ |
版本号 |
NULL |
是 |
int |
NULL |
version |
|
NAME_ |
名称 |
NULL |
是 |
varchar |
255 |
部署的文件名,如:mail.bpmn、mail.png |
|
DEPLOMENT_ID_ |
部署ID |
NULL |
是 |
varchar |
64 |
ACT_RE_DEPLOYMENT |
|
BYTES_ |
字节(二进制数据) |
NULL |
是 |
longblob |
4294967295 |
||
GENERATED_ |
是否系统生成 |
NULL |
是 |
tinyint |
NULL |
0为用户上传;1为系统自动生成(系统自动根据xml生成png) |
属性数据表:act_ge_property
属性数据表。存储整个流程引擎级别的数据。
字段 |
字段名称 |
默认值 |
是否为空 |
数据类型 |
字段长度 |
键 |
备注 |
ID_ |
主键 |
否 |
varchar |
64 |
PRI |
||
REV_ |
版本号 |
NULL |
是 |
int |
NULL |
version |
|
NAME_ |
名称 |
NULL |
是 |
varchar |
255 |
部署的文件名,如:mail.bpmn、mail.png、mail.bpmn20.xml |
|
VALUE_ |
值 |
NULL |
是 |
varchar |
400 |
部署ID表:act_re_deployment
字段 |
字段名称 |
默认值 |
是否为空 |
数据类型 |
字段长度 |
键 |
备注 |
ID_ |
主键 |
否 |
varchar |
64 |
PRI |
||
NAME_ |
名称 |
NULL |
是 |
varchar |
255 |
||
CATEGORY_ |
分类 |
NULL |
是 |
varchar |
255 |
||
TENANT_ID_ |
租户 |
是 |
varchar |
255 |
|||
DEPLOY_TIME |
部署时间 |
NULL |
是 |
timestamp |
NULL |
||
注: 1.部署流程定义时需要被持久保存下来的信息。 |
流程设计模型部署表: act_re_model .
流程设计器设计流程后,保存数据到该表。
字段 |
字段名称 |
默认值 |
是否为空 |
数据类型 |
字段长度 |
键 |
备注 |
ID_ |
主键 |
否 |
varchar |
64 |
PRI |
||
REV_ |
版本号 |
是 |
int |
NULL |
veision |
||
CATEGORY_ |
分类 |
NULL |
是 |
varchar |
255 |
流程定义Namespace就是类别 |
|
NAME_ |
名称 |
NULL |
是 |
varchar |
255 |
||
KEY_ |
标识 |
否 |
varchar |
255 |
MUL |
||
VERSION_ |
版本 |
否 |
int |
NULL |
|||
CREATE_TIME_ |
创建时间 |
NULL |
是 |
datetime |
|||
LAST_UPDATE_TIME_ |
最新修改时间 |
NULL |
是 |
datetime |
|||
META_INFO_ |
流程信息 |
NULL |
是 |
varchar |
255 |
以json格式保存流程定义的信息 |
|
DEPLOYMENT_ID_ |
部署ID |
NULL |
是 |
varchar |
255 |
||
EDITOR_SOURCE_VALUE_ID_ |
NULL |
是 |
datetime |
NULL |
|||
EDITOR_SOURCE_EXTRA_VALUE_ID_ |
NULL |
是 |
datetime |
NULL |
流程表:act_re_procdef
业务流程定义数据表。此表和 ACT_RE_DEPLOYMENT 是多对一的关系,即,一个部署的bar包里可能包含多个流程定义文件,每个流程定义文件都会有一条记录在 ACT_REPROCDEF 表内,每个流程定义的数据,都会对于 ACT_GE_BYTEARRAY 表内的一个资源文件和 PNG 图片文件。和 ACT_GE_BYTEARRAY 的关联是通过程序用ACT_GE_BYTEARRAY.NAME 与 ACT_RE_PROCDEF.NAME 完成的,在数据库表结构中没有体现。
字段 |
字段名称 |
默认值 |
是否为空 |
数据类型 |
字段长度 |
键 |
备注 |
ID_ |
主键 |
否 |
varchar |
64 |
PRI |
||
REV_ |
版本号 |
是 |
int |
NULL |
veision |
||
CATEGORY_ |
分类 |
NULL |
是 |
varchar |
255 |
流程定义Namespace就是类别 |
|
NAME_ |
名称 |
NULL |
是 |
varchar |
255 |
||
KEY_ |
标识 |
否 |
varchar |
255 |
MUL |
||
VERSION_ |
版本 |
否 |
int |
NULL |
|||
DEPLOYMENT_ID_ |
部署ID |
NULL |
是 |
varchar |
64 |
||
RESOURCE_NAME_ |