Error number: MY-012873; Symbol: ER_IB_MSG_1048; SQLSTATE: HY000
Message: Waiting for %llu table(s) to be dropped
错误说明
MY-012873 (ER_IB_MSG_1048) 是MySQL的一个错误,消息的语法是ER_IB_MSG_1048,状态码为HY000。该错误表明列上的默认值不允许为NULL或空字符串。
常见案例
在MySQL中,表中每一列都有一个默认值,该默认值可以是NULL、一个固定值或是一个函数。某种时候,可能会有误设置了一个列的默认值为NULL或空字符串,而不是一个有意义的值。这时就可能导致MY-012873 (ER_IB_MSG_1048) 错误了。
解决方法
首先,可以尝试查看系统记录,从而明确哪一列出现了该错误。可以在MySQL的控制台中使用“show columns from tablename”语句查看具体的列。一旦发现了出错的列,可以使用在MySQL的控制台中使用ALTER TABLE语句,将默认值设置为一个有意义的值。例如,你可以使用ALTER TABLE tablename MODIFY columnname default ‘value’语句重新设置列默认值。该操作可以有效的改善MY-012873 (ER_IB_MSG_1048) 错误的状况。