ruoyimate导入sql\antflow\bpm_init_db.sql报错

sql\antflow\bpm_init_db.sql 免费云服务器运行后报错:

create table t_bpm_dynamic_condition_choosen

(

id bigint auto_increment,

process_number varchar(255) null comment '三丰云流程编号',

node_id varchar(100) null comment '被选中条件节点的id',

node_from varchar(100) null,

constraint t_bpm_dynamic_condition_choosen_pk

primary key (id),

KEY indx_process_number (process_number),

KEY t_bpm_dynamic_condition_choosen_idx2 (node_id)

)

comment '流程动态条件选择条件记录表'

1071 - Specified key was too long; max key length is 1000 bytes

我找到问题了!这是 MySQL 索引长度限制的问题。在**** UTF-8 编码下, varchar(255) 创建索引时会超过限制。让我修复这个 SQL 文件:

process_number varchar(255) null comment '流程编号',

改成

process_number varchar(191) null comment '流程编号',

我已经修复了这个索引长度问题。将 process_number 的长度从 varchar(255) 改为 varchar(191) ,这样可以避免 MySQL 索引长度限制(在 UTF-8 编码下,191 * 3 = 573 字节,不会超过 1000 字节的限制)。

我发现这个 SQL 文件中有很多 tenant_id varchar(255) 字段,而且很多都有索引。这可能会导致同样的索引长度问题。让我检查一下是否有对 tenant_id 创建索引的地方:

我发现了另一个索引长度问题!让我修复 t_out_side_bpm_call_back_record 表中的 tenant_id 字段:
tenant_id varchar(255) NOT NULL DEFAULT '' COMMENT 'tenantId',

改为:
tenant_id varchar(191) NOT NULL DEFAULT '' COMMENT 'tenantId',

现在你可以重新运行这个 SQL 文件,没再报错。

运行完这个 SQL 文件后,再尝试启动项目,看看是否还有其他问题需要解决。

相关推荐
齐天qaq5 小时前
Android 系统 APK 分区与权限
android
心平气和量大福大5 小时前
android-控件-多选框CheckBox
android·gitee
这个DBA有点耶6 小时前
同城双活落地的三座山:网络延迟、脑裂预防、反向同步
数据库·架构·dba
青春之我_XP6 小时前
MySQL 常用日期函数 实战指南
数据库·sql·mysql·数据分析·数据库开发·日期函数
Nturmoils6 小时前
sys_dump 备了库,角色和权限别漏在外面
数据库
接着奏乐接着舞。6 小时前
【2026】73道Redis 常见面试题与参考答案
数据库·redis·后端·缓存
pengyu7 小时前
【Kotlin 协程修仙录 · 大乘境 · 初阶】 | 跳出三界:协程在 KMP 与后端开发中的跨平台之道
android·kotlin
XiaoLeisj7 小时前
Android Memory Profiler:堆内存指标、内存抖动与泄漏定位
android·性能优化·内存抖动·内存泄露·memory profiler
未来猫咪花7 小时前
Everything is ViewModel:让状态管理回到对象世界
android·flutter·ios