为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM8
【操作系统】:Linux
【CPU】:
【问题描述】*:MYSQL迁移达梦,建表时UNIQUE怎么处理?是否能直接去掉?还是因为不能用ALTER?
报错:
错误号: -2864
错误消息: 第1 行附近出现错误:
表中已存在这样的唯一关键字或主键
xxxxr
/* 任务失败: 在表"xxxxr".“AUTH_USERROLE"上添加UNIQUE约束T_USERROLE_USERID_ROLEID_PK /
/ 任务失败: 在表"xxxxr”."AUTH_USERROLE"上添加UNIQUE约束T_USERROLE_USERID_ROLEID_PK /
/ 相关SQL语句: */
ALTER TABLE “xxxxr”.“AUTH_USERROLE” ADD UNIQUE(“USERID”,“ROLEID”);
Mysql原ddl :
create table auth_userrole
(
UserId varchar(32) ,
RoleId int ,
Status char ,
CreateId int ,
CreateTime datetime default CURRENT_TIMESTAMP ,
UpdateId int ,
UpdateTime datetime default CURRENT_TIMESTAMP ,
Remark varchar(256) ,
constraint t_userrole_UserId_RoleId_pk
unique (UserId, RoleId)
)
collate = utf8mb4_unicode_ci;
alter table auth_userrole
add primary key (UserId, RoleId);
可以去掉,确保后面的alter语句把主键加上去了即可