bases de datos

Guardar números de teléfono en base de datos

En este post vamos a hablar sobre cómo guardar números telefónicos, teléfonos o números de teléfono en las bases de datos, enfocándonos en el tipo de dato.

Esto va a responder a la pregunta de ¿Cuál tipo de dato usar para guardar números de teléfono?.

Lo expuesto aquí es mi opinión y sugerencia, pero al final puedes hacer lo que gustes. Aunque la respuesta parezca obvia, he visto que varios usuarios preguntan esto y por eso he decidido hacer este post.

Tipo de dato para guardar teléfonos

No importa si trabajas con MySQL, SQLServer, SQLite, PostgreSQL o cualquier otro. Al final llegarás a la pregunta del tipo de dato.

Como principiantes podemos pensar que el tipo de dato para un teléfono puede ser el entero, pero esto no sería lo correcto.

En resumen, yo recomiendo guardarlos como texto (varchar, texto, o lo que sea el equivalente a la cadena en tu gestor) ya que no es necesario guardarlos como enteros.

¿Por qué no usar enteros?

No es malo usarlos para guardar teléfonos, pero no tiene caso guardarlos así y en ocasiones podemos cometer algunos errores.

El tipo de dato entero existe para guardar números (qué sorpresa) y luego hacer algo con ellos. Por ejemplo, sacar promedios, mínimos, sumas, máximos, etcétera.

En el caso de los números telefónicos no necesitamos sumarlos o hacer alguna operación con ellos.

Distintos formatos

Los teléfonos no siempre se conforman de números. Algunos usuarios los pueden escribir con espacios o guiones. También pueden escribirlos empezando con 0 o con signos.

Posible desbordamiento

Cuando elegimos el tipo de dato entero podemos causar desbordamientos y errores de rango. Por ejemplo, en MySQL el tipo de dato INT solo soporta hasta el número 2147483647 y si ingresas algo mayor a eso, será truncado a 2147483647.

Entonces si un usuario ingresa, por ejemplo, el número 2147483648 el mismo será reiniciado a 2147483647. Y eso pasará con todos los números mayores al límite.

Nota:  también existe el tipo de dato BIGINT que soporta números mucho más grandes.

Esto es un simple ejemplo muy específico, pero solo es por mencionar algunas cosas que pueden pasar.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Entradas recientes

Imprimir PDF con Bot de Telegram

La impresión de un PDF en cualquier impresora se puede automatizar con un bot de…

3 días hace

Enviar mensaje con bot de Telegram usando JavaScript (lado del cliente)

Hoy te enseñaré cómo enviar un mensaje a un usuario desde un bot de Telegram…

4 días hace

PHP: incrustar imagen en base64

El día de hoy te enseñaré algo muy sencillo pero útil al programar con PHP:…

4 días hace

Plugin ESC POS – Actualización 3.4.0: imprimir HTML

El plugin para imprimir en impresoras térmicas alcanza hoy su versión 3.4.0 agregando soporte para…

5 días hace

JavaScript (lado del cliente): leer pixeles de imagen

En ocasiones es necesario leer los pixeles y colores de una imagen con JavaScript del…

2 semanas hace

PHP y JavaScript: llenar select con AJAX

Siguiendo con los tutoriales de listas desplegables o select con JavaScript, vamos a ver cómo…

2 semanas hace

Esta web usa cookies.