sql >> Base de Datos >  >> RDS >> Sqlserver

¿Cómo ubico la falla en una falla al convertir varchar a int en SQL?

Podría usar una expresión regular para determinar qué campos no se convertirán correctamente.

SELECT * 
FROM example 
WHERE xyz LIKE '%[^0-9]%'

Los registros devueltos son los que no CAST correctamente cuando ALTERAS tu tabla. Los decimales almacenados en campos varchar tampoco se convertirán en enteros.

Considere:

select CAST('1.1' as int) -- esto devuelve un error.

Buena suerte.