MySQL Error number: MY-011974; Symbol: ER_IB_MSG_149; SQLSTATE: HY000

文档解释

Error number: MY-011974; Symbol: ER_IB_MSG_149; SQLSTATE: HY000

Message: %s

错误说明

MySQL错误代码MY-011974表示“ER_IB_MSG_149”,它表示当GLOBAL关键字在CREATE TABLE语句中使用与TEMPORARY关键字不同的字符集时发生的错误。这个错误代码以SQLSTATE“HY000”格式报告。

常见案例

触发上面的MySQL错误的常见情况是,您将使用的表的字符集与GLOBAL关键字指定的字符集不同。例如,如果某个表使用“latin1”字符集,而您在CREATE TABLE语句中使用“utf8”GLOBAL字符集,则会发生这种情况,例如,

CREATE TABLE user (

id INTEGER AUTO_INCREMENT,

username VARCHAR(50) NOT NULL,

password VARCHAR(50) NOT NULL,

PRIMARY KEY (id)

) enging=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC GLOBAL CHARSET=utf8;

解决方法

要解决这个错误,您应该确保在CREATE TABLE语句中使用的字符集以及GLOBAL字符集应该相同,例如,

CREATE TABLE user (

id INTEGER AUTO_INCREMENT,

username VARCHAR(50) NOT NULL,

password VARCHAR(50) NOT NULL,

PRIMARY KEY (id)

) enging=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=dynamic GLOBAL CHARSET=utf8;

这将解决报道该错误的情况,因为它确保同一字符集用于GLOBAL关键字和DEFAULT CHARSET关键字

你可能感兴趣的