Error number: MY-011543; Symbol: ER_GRP_RPL_FK_WITH_CASCADE_UNSUPPORTED; SQLSTATE: HY000
Message: Table %s has a foreign key with ‘CASCADE’, ‘SET NULL’ or ‘SET DEFAULT’ clause. This is not compatible with Group Replication.
错误说明
MY-011543错误代码是MySQL数据库管理系统Server Error Code中的一个,这个错误代表着不支持级联,外键(Foreign Key)。这是一个通用错误,错误编号表示着Server处理是正常的,它最多只支持MySQL5.5或者以上的版本,但是在插入语句时,数据库管理系统会返回一个Error,其代码为MY-011543,系统会报白该错误,最准确的描述可以被归类为“MySQL不支持使用外键(Foreign Key)的级联操作”。
常见案例
当用户试图使用级联外键(Cascading Foreign Key)而MySQL版本却小于5.5时,就会返回Error,其代码错误MY-011543。此外,使用下列语法也会出现MY-011543错误:
ALTER TABLE table1 ADD CONSTRAINT FOREIGN KEY (column1) REFERENCES table2;
解决方法
该error MY-011543由于系统不支持外键(Foreign Key)的级联操作而产生,应该是系统版本低于5.5会出现这个问题,更新MySQL版本为5.5或者上述版本,可以避免出现这个error。另外,还可以通过替换表名或者调整查询的内容来解决该Error,并且还可以添加可以处理级联外键的功能代码,来解决该Error。比如说可以通过创建一个查询器,用它查出各表中影响到本次Foreign Key数据删改的相关数据,然后调用程序更新到原先MySQL中去,以便在达到正确的级联外键更新结果上。