MySQL Error number: MY-011969; Symbol: ER_IB_MSG_144; SQLSTATE: HY000 报错 故障修复 远程处理

文档解释

Error number: MY-011969; Symbol: ER_IB_MSG_144; SQLSTATE: HY000

Message: %s

错误说明:

MY-011969存储引擎:ER_IB_MSG_144表示InnoDB错误码,该错误表示InnoDB存储引擎检测到字段定义中出现重复列名。这是MySQL表示语法中出现重复列名称的错误。解决此错误的正确做法是,应该避免在执行SQL语句时创建具有重复列名的表。

常见案例

在MySQL中,当程序员或数据库管理员试图在具有重复列名的表上执行SQL语句时会出现该错误,例如:

CREATE TABLE employee (

id INT NOT NULL,

id INT NOT NULL

) Engine=InnoDB;

在上面的示例中,id列被定义了两次,会导致上述错误。

解决方法:

解决此错误的正确做法是,应该避免在执行SQL语句时创建具有重复列名的表。一定要确保表格中的列名都是惟一的。

还有另一种解决方案可以使用列别名,如果两个列只有一个是存储在表中,而另一个是计算的,这时你可以使用列的别名,语法如下:

SELECT real_col AS alias_col FROM table_name;

这种方式指定另一个名称来达到把2个列重新命名,当另一列是复杂以及更耗时的时候,这是一个非常有用的解决方法。


数据运维技术 » MySQL Error number: MY-011969; Symbol: ER_IB_MSG_144; SQLSTATE: HY000 报错 故障修复 远程处理