Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何修复有问题的MySQL InnoDB表?_Mysql_Innodb_Mysqlcheck - Fatal编程技术网

如何修复有问题的MySQL InnoDB表?

如何修复有问题的MySQL InnoDB表?,mysql,innodb,mysqlcheck,Mysql,Innodb,Mysqlcheck,我们公司使用SailPoint IIQ作为IAM解决方案 尝试运行时: delete IdentityRequest* 我得到一个错误sailpoint.tools.GeneralException:集合的索引列为null:sailpoint.object.IdentityRequest.items 执行select*from spt\u identity\u request\u项,其中id为null不返回任何结果 我正在寻找救命稻草,并试图修复桌子,以防这是导致问题的原因。他们用于数据库的表类

我们公司使用SailPoint IIQ作为IAM解决方案

尝试运行时:
delete IdentityRequest*

我得到一个错误
sailpoint.tools.GeneralException:集合的索引列为null:sailpoint.object.IdentityRequest.items

执行
select*from spt\u identity\u request\u项,其中id为null不返回任何结果

我正在寻找救命稻草,并试图修复桌子,以防这是导致问题的原因。他们用于数据库的表类型是innodb

维修表spt\u标识\u请求\u项目
生成一条注释,说明表的存储引擎不支持修复

我还尝试了以下命令:

sudo mysqlcheck--repair--databaseidentityq-u identityq-p

当它运行时,它给出了一系列注释:

注意:表的存储引擎不支持修复


这个命令实际上是在修复问题吗?如果没有,是否有方法修复此问题以及如何修复?

看起来上面的问题是使用ORM执行删除操作,并且不是在sql中出错,而是在应用程序级别出错:

sailpoint.tools.GeneralException: 
    null index column for collection: sailpoint.object.IdentityRequest.items

换句话说,它可能在到达SQL级别之前就失败了,因此执行
修复表
不会产生任何后果。也许您需要在
sailpoint.object.IdentityRequest.items
中指定如何处理M2M表的删除。例如,我的猜测是,它不知道是取消还是删除FK关系中引用的对象。

请提供
SHOW CREATE TABLE