テーブルに650のフィールドを挿入するストアドプロシージャがあります。挿入は、切り捨てエラーで失敗します。
簡単です
INSERT INTO
SELECT (a bunch of fields)
FROM (a bunch of tables)
以下はエラーメッセージです。
メッセージ8152、レベル16、状態14、プロシージャDSP_Procedure、行1075文字列またはバイナリデータは切り捨てられます。
切り捨てエラーの原因となっているフィールドを簡単に特定できる方法はありますか?
テーブルに挿入される選択ステートメントに650のフィールドがあるため、どのフィールドが切り捨てエラーの原因であるかを正確に特定することが困難です。
一度に100個のフィールドのみを挿入するように、一度にフィールドのブロックをコメント化し、少なくとも100個のフィールドのグループに絞り込むことができるまで、SP 6または7の異なる時間を実行できると思います。切り捨てエラーの原因となっているフィールドが含まれます。
またはSELECT INTO
、新しいテーブルを作成して、SPに挿入しようとしているターゲットテーブルのデータ長とテーブルのデータ長を比較して、どのフィールドに予想より長いフィールド長が含まれているかを確認できると考えています。 ..
SQL Server 2014を使用しています。
より簡単な代替手段はありますか?