执行存储过程报错:“SQLSERVER 内部错误。文本管理器无法继续执
问题描述: 执行存储过程报错,如下: 服务器:消息7102,级别20,状态7,过程 P_TJXSZL,行139 SQLSERVER?内部错误。文本管理器无法继续执行当前语句。 连接中断 ? 问题跟踪: 首先,根据报错的行数定位存储过程中的语句,并把语句单独摘出来执行,如果执行通过,则表示问题不在这里,继续下一次的跟踪; 然后,对该存储过程进行调试;调试后发现过程还未执行就报错了。这说明在调用过程开始的地方就有问题; 然后,从头对存储过程中的语句逐句执行,看是哪句出错。也可以分段批量执行语句,直到找出报错的语句; 最后,分析此语句,定位原因。 ? 原因分析: TR_FDZDMXK表损坏,需重建,但是删除此表时提示如下信息:(使用修复表语句不管用,原因待查。。) 服务器: 消息 7105,级别 22,状态 3,行 1 连接中断 ? 临时解决方法: 前提:数据库已做好备份。打开查询分析器,执行以下语句如下: 步骤1、将损坏的名进行重命名 EXEC?SP_RENAME?'TR_FDZDMXK','TR_FDZDMXK_BAK' ? 步骤2、删除系统表中保存的损坏的表约束与主键 EXEC SP_RENAME 'TR_FDZDMXK','TR_FDZDMXK_BAK'GODELETE FROM SYSOBJECTS WHERE NAME LIKE '%DF__TR_FDZDMX%' OR NAME LIKE '%PK_TR_FDZDMXK%' ? 步骤3、在查询分析器中,找到相应的数据库下的此表,并生成创建(CREATE)表的语句。 步骤4、执行创建表的语句。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |