Asp.netアプリケーションを実行しています。レコードを検索しています。表示ボタンをクリックすると、このエラーが発生します。
ページ(一部のページ)のデータベース(データベース名)で内部操作中に不整合が検出されました。テクニカルサポートに連絡してください。参照番号6。
私はグーグルで検索し、DBCC CHECKDBを実行すると結果を得ました。 SQL Server 2005で次のコマンドを実行します。
DBCC CHECKDB (database name) WITH NO_INFOMSGS, ALL_ERRORMSGS
私の結果はこのようなものでした
テーブルエラー:オブジェクトID 1424372489、インデックスID 1、パーティションID 374822652149760、割り当てユニットID 93347675439104(行内データタイプ)。ページ(1:72872)には前のページ(1:72871)からの参照がありません。チェーンリンケージの問題の可能性があります。メッセージ8928、レベル16、状態1、行1
オブジェクトID 1424372489、インデックスID 1、パーティションID 374822652149760、割り当てユニットID 93347675439104(タイプの行内データ):ページ(1:109577)を処理できませんでした。詳細については、他のエラーを参照してください。メッセージ8978、レベル16、状態1、行1
テーブルエラー:オブジェクトID 1424372489、インデックスID 1、パーティションID 374822652149760、割り当てユニットID 93347675439104(行内データタイプ)。ページ(1:109578)には前のページ(1:109577)からの参照がありません。チェーンリンケージの問題の可能性があります。メッセージ8976、レベル16、状態1、行1
CHECKDBは、テーブル 'some table'(オブジェクトID 1424372489)で、割り当てエラー0および一貫性エラー10を検出しました。
CHECKDBは、テーブル 'some table'(オブジェクトID 1432300808)で0の割り当てエラーと5の一貫性エラーを検出しました。
CHECKDBは、データベース 'データベース名'で0の割り当てエラーと19の一貫性エラーを検出しました。 repair_allow_data_lossは、DBCC CHECKDB(データベース名)によって検出されたエラーの最小修復レベルです。
この不整合エラーは、次のコマンドを実行することで解決できます。
dbcc checkdb(database name,repair_allow_data_loss)
ジェニが言ったように、あなたはそのコマンドを実行することができます、そしてそれは修理をしますが、それはいくつかのデータを失うことができます。
まず始めに:
DBCC CHECKDB( 'DB名'、REPAIR_REBUILD)
それが失敗した場合は、jeniが提供するコマンドを使用します。
dbcc checkdb(データベース名.repair_allow_data_loss)
ただし、修復を許可して実行する必要がある場合は、バックアップからの復元を検討してください。