1

これらのコマンドをコンソールアプリケーションから実行しています

DBCC SHRINKFILE (@FILE_NAME_MDF, 0) WITH NO_INFOMSGS
DBCC SHRINKFILE (@FILE_NAME_LDF, 0) WITH NO_INFOMSGS

このエラーが発生します

XXXデータベースを縮小できませんでした。許容される最大行サイズの8060を超えるサイズ8126の行を作成できません。ステートメントは終了しました。System.Data.SqlClient.SqlException(0x80131904):許容される最大行サイズの8060よりも大きいサイズ8126の行を作成できません。

どんな助けでも大歓迎です。

4

1 に答える 1

0

ここでの問題は、データベースの行が最大許容サイズの端に近く、DBCC SHRINKFILEを実行すると、この行にデータが追加され、制限を超えてしまうことです。私はあなたのテーブルを見て、サイズ制限を超えているテーブルがあるかどうかを確認し、データを行外に格納するようにテーブルを変更できないかどうかを確認します。たとえば、非常に大きなnvarcharフィールドがある場合は、それをTEXTに変更して、そのデータを独自のページに保存できるようにすることができます。

于 2011-05-23T19:39:40.980 に答える