Error number: MY-011984; Symbol: ER_IB_MSG_159; SQLSTATE: HY000
Message: %s
错误说明:
ER_IB_MSG_159 错误意味着用户尝试与具有不兼容数据类型的表列作对比比较。
ER_IB_MSG_159 的经常发生案例包括在SELECT 语句联接两个表时,尝试将两个表之间具有不兼容数据类型的列作对比比较,MySQL 需要将数据显示转换为执行比较操作的数据类型,但只有字符串和数字的类型(例如 VARCHAR 或 INT)可以被转换;另外,当在 WHERE 子句中使用 LIKE 操作符来对比字符串时,每个表的字段类型也必须兼容。
解决方法:
ER_IB_MSG_159 的解决方法主要是解决分析联接表中不兼容的数据类型冲突问题。在查询语句中使用强制转换,将不兼容的类型强制转换为能够执行比较操作的兼容类型;或者创建一个视图,使用视图将不兼容的数据类型转换为能够执行比较操作的兼容类型。