会社行きたくなかったんです。

自由になりたくて会社辞めました

SQL Server

内部クエリ プロセッサ エラー: クエリ プロセッサ実行中に予期しないエラーが発生しました。

投稿日:

SQL Serverで、データを更新しようとすると、特定の行だけ以下のエラーが発生するようになりました。

内部クエリ プロセッサ エラー: クエリ プロセッサ実行中に予期しないエラーが発生しました。

SQL serverの再起動、コンピュータの再起動を行っても、エラーは発生し続けています。

スポンサーリンク

DBCC CHECKDBを実行したらエラーは発生しなくなりました。
実行したコマンドは以下の3つです。
今回実行したデータは、REPAIR_ALLOW_DATA_LOSSを指定しているので、最悪データが吹っ飛ぶ可能性があります。
真似する場合は、バックアップをとるか、別のオプションを指定してください。

master データベースに接続してコマンドを実行します。

ALTER DATABASE [データベース名] SET SINGLE_USER

DBCC CHECKDB([データベース名],REPAIR_ALLOW_DATA_LOSS) WITH TABLERESULTS

ALTER DATABASE [データベース名] SET MULTI_USER

一時的にシングルユーザーモードにする必要があるため、その間、他のコンピュータからデータベースにアクセスできません。

一応、該当テーブルだけを修復する方法もありますが、シングルユーザーモードにする必要があります。

ALTER DATABASE [データベース名] SET SINGLE_USER

DBCC CHECKTABLE([データベース名].dbo.[テーブル名],REPAIR_ALLOW_DATA_LOSS) WITH TABLERESULTS

ALTER DATABASE [データベース名] SET MULTI_USER

別の手段としては、一旦テーブルの内容をエクスポートして、空っぽにしてから取り込むとなおります。
インデックスが再構築されるからだと思いますが、

ALTER INDEX ALL on [テーブル名] REBUILD

を実行して、テーブルのインデックスを再構築しても直りませんでした。

-SQL Server

Copyright© 自由になりたくて会社辞めました , 2019 AllRights Reserved Powered by AFFINGER4.