sql >> Base de Datos >  >> RDS >> Oracle

Oracle DB:establezca el número de entrada en la longitud exacta

Establezca el tipo de datos para esa columna en varchar(11) . Si debe tener exactamente 11 caracteres cada vez, una restricción de verificación garantizará que:check (length(phone_no) = 11) . Para garantizar la longitud y la "numeralidad" (todos los dígitos, sin letras), utilice

check (length(phone_no) = 11 and 
       regexp_like(phone_no, '^[[:digit:]]{11}$')
)

Si tiene que usar un tipo numérico, y esta es una mala idea, su mejor apuesta probablemente sea numérica (11,0).

Una restricción de verificación puede ayudarlo a restringir el rango de entrada válida, pero ningún tipo numérico almacena ceros a la izquierda. Tendrás que saltar aros innecesarios y evitables si algo como 00125436754 es un número de teléfono válido.