Eu tenho um procedimento armazenado que insere 650 campos em uma tabela. A inserção está falhando com um erro de truncamento.
É um simples
INSERT INTO
SELECT (a bunch of fields)
FROM (a bunch of tables)
Abaixo está a mensagem de erro:
A mensagem 8152, nível 16, estado 14, procedimento DSP_Procedure, linha 1075 String ou dados binários seria truncada.
Existe uma maneira rápida de identificar qual campo está causando o erro de truncamento?
O fato de a instrução select a ser inserida na tabela ter 650 campos dificulta a identificação de qual campo está causando o erro de truncamento.
Talvez eu possa comentar blocos de campos de cada vez para que o SP insira apenas 100 campos por vez e execute o SP 6 ou 7 vezes diferentes até que eu possa pelo menos diminuir para um grupo de 100 campos que conterá o campo que está causando o erro de truncamento.
Como alternativa, estou pensando que talvez eu possa apenas SELECT INTO
uma nova tabela e, em seguida, compare os comprimentos de dados na tabela versus os comprimentos de dados da tabela de destino que estou tentando inserir no meu SP para ver qual campo contém um comprimento maior que o esperado. ..
Estou usando o SQL Server 2014.
Alguma alternativa mais fácil?