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

文档解释

Error number: MY-010478; Symbol: ER_NDB_COLUMN_DEFAULTS_DIFFER; SQLSTATE: HY000

Message: NDB Internal error: Default values differ for column %u, ndb_default: %d

Error number: MY-010478; Symbol: ER_NDB_COLUMN_DEFAULTS_DIFFER; SQLSTATE: HY000

错误说明:

这是MySQL服务器的一个表定义错误。它的ER_NDB_COLUMN_DEFAULTS_DIFFER SQLSTATE错误(HY000)指示与NDB存储引擎绑定的表中的列具有不同的默认值。列的默认值可以为空、数字或字符串,但在NDB存储引擎中,每列都只能有一个默认值。

常见案例

这种错误通常发生在对NDB存储引擎创建一个表时,使用不兼容的假定值。这些假设可以是明确表示值,例如NULL,也可以是表达式,如NOW()。如果这两个表达式包含不同的默认值,则会出现此错误。

解决方法:

第一步是确认列的定义,这些列的默认值是什么,然后确定NDB存储引擎支持这些值。在这种情况下,可以使用以下语句查看表定义:

DESCRIBE `

ALTER TABLE `

下一步是重新定义表,包括一个兼容NDB存储引擎的默认值。可以使用以下语句来重新定义表:

`;

UPDATE `

接下来,将确保NDB存储引擎中的新定义应用于表中的所有行:

` MODIFY COLUMN “ DEFAULT ;

DROP TABLE `

最后,删掉以前操作的表副本副本:

` SET “ = DEFAULT;

`
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《MySQL Error number: MY-010478; Symbol: ER_NDB_COLUMN_DEFAULTS_DIFFER; SQLSTATE: HY000 报错 故障修复 远程处理》
文章链接:https://zhuji.vsping.com/287378.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。