sql server 2000 - una - ¿Cómo desactivo los errores en el truncamiento de cadenas en SQL Server?
no se pudo convertir el valor debido a una posible pérdida de datos (2)
¿Cómo puedo decirle a SQL Server que no genere un error si inserto o actualizo una cadena más larga que el tamaño del campo? Me gustaría el truncamiento silencioso en esta instancia.
Pruebe a enviar la variable al tipo y a la longitud exactos antes de insertarla. Eso podría hacer el truco. Casting (y conversión) son mucho más flexibles. :)
Lo que debe hacer es configurar ANSI WARNINGS en OFF Puede hacerlo llamando
set ANSI_WARNINGS OFF
También he escrito un ejemplo práctico:
create table bla(id varchar(2))
go
insert bla values (''123'') --fails
set ANSI_WARNINGS OFF
insert bla values (''123'') --succeeds
Recuerde volver a activar las advertencias de ANSI cuando haya terminado. Puede hacerlo llamando al:
set ANSI_WARNINGS ON