修复 mysql 初始化脚本转 dm8 失效的问题

This commit is contained in:
chenbowen
2025-07-01 14:59:11 +08:00
parent 625ad8f46f
commit 1ba27d6c9e
18 changed files with 1426 additions and 977 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -45,7 +45,9 @@ def load_and_clean(sql_file: str) -> str:
("b'1'", "'1'"),
)
content = open(sql_file).read()
# 指定 utf-8 编码并忽略无法解码的字节
with open(sql_file, encoding="utf-8", errors="ignore") as f:
content = f.read()
for replace_pair in REPLACE_PAIR_LIST:
content = content.replace(*replace_pair)
content = re.sub(r"ENGINE.*COMMENT", "COMMENT", content)
@@ -701,7 +703,8 @@ class DM8Convertor(Convertor):
def generate_column(col):
name = col["name"].lower()
if name == "id":
return "id bigint NOT NULL PRIMARY KEY IDENTITY"
# 默认不生成自增,使用分布式 Id
return "id bigint NOT NULL PRIMARY KEY "
type = col["type"].lower()
full_type = self.translate_type(type, col["size"])

View File

@@ -3,9 +3,7 @@ package cn.iocoder.yudao.module.infra.dal.dataobject.db;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import cn.iocoder.yudao.framework.mybatis.core.type.EncryptTypeHandler;
import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
/**
@@ -27,6 +25,7 @@ public class DataSourceConfigDO extends BaseDO {
/**
* 主键编号
*/
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/**
* 连接名

View File

@@ -11,9 +11,7 @@ import cn.iocoder.yudao.module.infra.framework.file.core.client.local.LocalFileC
import cn.iocoder.yudao.module.infra.framework.file.core.client.s3.S3FileClientConfig;
import cn.iocoder.yudao.module.infra.framework.file.core.client.sftp.SftpFileClientConfig;
import cn.iocoder.yudao.module.infra.framework.file.core.enums.FileStorageEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.handlers.AbstractJsonTypeHandler;
import com.fasterxml.jackson.core.type.TypeReference;
import lombok.*;
@@ -39,6 +37,7 @@ public class FileConfigDO extends BaseDO {
/**
* 配置编号,数据库自增
*/
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/**
* 配置名

View File

@@ -2,7 +2,9 @@ package cn.iocoder.yudao.module.infra.dal.dataobject.file;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
@@ -26,6 +28,7 @@ public class FileDO extends BaseDO {
/**
* 编号,数据库自增
*/
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/**
* 配置编号

View File

@@ -4,7 +4,9 @@ import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import cn.iocoder.yudao.module.system.enums.logger.LoginLogTypeEnum;
import cn.iocoder.yudao.module.system.enums.logger.LoginResultEnum;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -27,6 +29,7 @@ public class LoginLogDO extends BaseDO {
/**
* 日志主键
*/
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/**
* 日志类型

View File

@@ -4,9 +4,7 @@ import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
import cn.iocoder.yudao.module.system.enums.mail.MailSendStatusEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import lombok.*;
@@ -35,6 +33,7 @@ public class MailLogDO extends BaseDO implements Serializable {
/**
* 日志编号,自增
*/
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/**

View File

@@ -3,9 +3,7 @@ package cn.iocoder.yudao.module.system.dal.dataobject.mail;
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -28,6 +26,7 @@ public class MailTemplateDO extends BaseDO {
/**
* 主键
*/
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/**
* 模版名称

View File

@@ -3,7 +3,9 @@ package cn.iocoder.yudao.module.system.dal.dataobject.notice;
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import cn.iocoder.yudao.module.system.enums.notice.NoticeTypeEnum;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -22,6 +24,7 @@ public class NoticeDO extends BaseDO {
/**
* 公告ID
*/
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/**
* 公告标题

Some files were not shown because too many files have changed in this diff Show More