Los números de teléfono, por convención, no se almacenan en columnas numéricas, sino de caracteres. No se hace como numérico porque eso excluye los códigos de DD (discado directo), que comienzan con cero... cosa que como recordarás, no existe en un número.
Por otro lado, el tema del "out of range" usualmente se da cuando se diseña mal la tabla, y se ha usado una columna
con signo, cosa que reduce el rango de representación a la mitad.
Postea el CREATE TABLE de la tabla, para que verifiquemos que lo estés haciendo bien. A partir de alli veremos qué te conviene.
Si no sabes como obtenerlo, usa:
donde "nombreDeTuTabla" es el nombre de la tabla en cuestión.
Luego posteanos el resultado completo de esa query.
Por cierto,
eso no significa que pueda aceptar números de hasta 20 dígitos. Se usa para otra cosa.
Un INT con signo sólo puede representar hasta el 2147483647.
Leer el manual de referencia, por favor:
http://dev.mysql.com/doc/refman/5.0/...ric-types.html