Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

372
Vistas
¿Cómo almacenar múltiples registros en la misma columna SQL con PHP?

¿Cuál sería una forma adecuada de almacenar múltiples valores en la misma columna SQL con la ayuda de PHP?

Por ejemplo, en un sistema que almacena detalles de Contacto/Cliente y le permite agregar más de 1 número de teléfono. Por ejemplo, puede guardar 2 números móviles, 1 número de oficina y un par de otros números para el mismo cliente.

Pero no entiendo muy bien cómo haría para guardar estos datos en una sola columna en lugar de crear una columna para Casa #, Móvil #, Trabajo # y ect.

Según tengo entendido, puede guardarse como un formato JSON, pero puede que me equivoque.

Gracias.

about 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Si desea almacenar varios números de teléfono para un contacto determinado, debe hacerlo a través de varios registros , no de valores múltiples dentro de un registro determinado. Por ejemplo, podría tener una tabla de Numbers parecida a esta:

 id | contact_id | number | type 1 | 1 | 591-8563 | 1 2 | 1 | 123-4567 | 2 3 | 2 | 867-5309 | 1

Aquí, la columna de type puede registrar si un teléfono es, por ejemplo, fijo (1) o celular (2). Puede ver que el contacto 1 tiene números de teléfono fijo y celular, mientras que el 2 solo tiene un teléfono fijo. Esta tabla de Numbers podría unirse a una tabla para los contactos.

about 4 years ago · Santiago Trujillo Denunciar

0

Bueno, si, por ejemplo, tiene una cantidad dinámica de números de teléfono (como varios números de teléfono móvil), podría crear una tabla solo para números de teléfono y agregar una relación con el cliente:

 +-----------------------------------+ | phone_number | +-----------+-----------+-----------+ | client_id | type | number | +-----------+-----------+-----------+ | 5 | office #1 | 055768765 | +-----------+-----------+-----------+ | 5 | mobile | 017884778 | +-----------+-----------+-----------+ ...

Sin embargo, si realmente desea guardar todos los números en una columna del cliente, así es como puede hacerlo:

 # Write: $phone_numbers = array('office #1' => '055768765', 'mobile' => '017884778'); $phone_numbers_for_db = json_encode($phone_numbers); # Read: $phone_numbers = json_decode($phone_numbers_from_db);
about 4 years ago · Santiago Trujillo Denunciar

0

No es posible en MySQL, a menos que desee almacenar JSON en una sola columna, como información de contacto y luego almacenar todos los datos que describió allí para que no tenga que preocuparse por la estructura de datos cada vez que ingrese un nuevo conjunto de datos.

Mire los motores de base de datos NoSQL como MongoDB, donde puede guardar JSON y luego llamarlo por nombres de columna, lo que significa que no tiene que crear columnas estrictas y puede insertar entradas más cortas o más largas según sea necesario; es más flexible que las bases de datos SQL.

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda