Para el varchar
tipo de datos int
, se lanzará un truncado en *
lugar de arrojar un error (en este caso, ya que los tres dígitos no caben en a varchar(2)
).
Esto no sucede con nvarchar
No hay forma de cambiar este comportamiento, se conserva por compatibilidad con versiones anteriores. Si este es un problema real para usted, puede agregar una restricción de verificación de que el valor en la columna no lo es, *
pero no puedo imaginar ninguna situación en la que valga la pena hacerlo.
La solución es simplemente no hacer eso. Si debe insertar un y INT
luego validarlo, -9 to 99
primero está en el rango O utilice siempre comillas alrededor de valores destinados a una columna de cadena en lugar de depender de conversiones implícitas.
integer
lugar devarchar