Oracle
 sql >> Database >  >> RDS >> Oracle

Oracle DB - Imposta il numero di input sulla lunghezza esatta

Imposta il tipo di dati per quella colonna su varchar(11) . Se deve contenere esattamente 11 caratteri ogni volta, un vincolo di controllo garantirà che:check (length(phone_no) = 11) . Per garantire lunghezza e "numeralità" (tutte le cifre, nessuna lettera), usa

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

Se devi usare un tipo numerico, e questa è una cattiva idea, la tua scommessa migliore è probabilmente numerica (11,0).

Un vincolo di controllo può aiutarti a limitare l'intervallo di input valido, ma nessun tipo numerico memorizza zeri iniziali. Dovrai saltare attraverso cerchi inutili ed evitabili se qualcosa come 00125436754 è un numero di telefono valido.