Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Guardar multiples campos

Estas en el tema de Guardar multiples campos en el foro de Mysql en Foros del Web. Quisiera saber como se modela la tabla supongamos que tengo una tabla que se llama clientes y esta dividido en clientes idclientes nombres apellidos cursos ...
  #1 (permalink)  
Antiguo 18/01/2006, 08:57
Avatar de helthon  
Fecha de Ingreso: junio-2005
Ubicación: Lima
Mensajes: 549
Antigüedad: 18 años, 10 meses
Puntos: 7
Exclamación Guardar multiples campos

Quisiera saber como se modela la tabla

supongamos que tengo una tabla que se llama clientes y esta dividido en
clientes
idclientes
nombres
apellidos
cursos

y en mi formulario tengo un checkbox que consta de 5 cursos (php, asp, sql, Mysql, Java) si el usuario selecciona 4 cursos como hago para guardarlo en mi Base de datos en el campo cursos....

Haber si me dan una idea

Gracias
__________________
HELTHON FUENTES
FLORERIA FLORES PERU Floresperu.com.pe
Garantizamos que cada entrega de flores será de la más alta calidad y frescura
  #2 (permalink)  
Antiguo 18/01/2006, 17:00
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 5 meses
Puntos: 655
Ahí debes tomar en cuenta 2 factores:
  1. Cambiar el modelo de datos y en este caso hacer 2 tablas:
    cliente
    idcliente
    nombre
    apellido
    y otra tabla que sea la relación cliente/curso
    clientecurso
    idcliente
    idcurso
    De esa forma grabas SOLO una ves el cliente y este a su ves puede tener varios cursos pero en otra tabla, de esa forma eliminas la redundancia de datos ya que el campo llave de la tabla clientecurso seria la concatenación de ambos campos.
  2. Realizas la inserción o modificación del cliente normalmente pero cuando vayas a registrar el o los cursos, por programación debes controlar cuales check están marcados para realizar los insert respectivos

Nota: El estándar de declaración de nombres de tablas y decripción de campos, se hace en singular ya que es un registro insertado simplemente.
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL
  #3 (permalink)  
Antiguo 18/01/2006, 23:01
Avatar de helthon  
Fecha de Ingreso: junio-2005
Ubicación: Lima
Mensajes: 549
Antigüedad: 18 años, 10 meses
Puntos: 7
Gracias BrujoNic

Se me olvido escribir ese detalle pero asi es tengo de esa forma detallada:

cliente
idcliente
nombre
apellido

y otra tabla que sea la relación cliente/curso

cursos
idcliente
idcurso
tipocurso

Ahora :
Cita:
Realizas la inserción o modificación del cliente normalmente pero cuando vayas a registrar el o los cursos, por programación debes controlar cuales check están marcados para realizar los insert respectivos
Mi pregunta es: si he seleccionado 2 cursos de mi check debo de guardar los dos datos en un solo campo o debo de tener 5 campos en mi tabla para poder guardar dichos datos.

Gracias
__________________
HELTHON FUENTES
FLORERIA FLORES PERU Floresperu.com.pe
Garantizamos que cada entrega de flores será de la más alta calidad y frescura
  #4 (permalink)  
Antiguo 19/01/2006, 04:01
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 5 meses
Puntos: 655
Para ese caso lo que se hace para no perder la integridad de datos y evitar redundancia, se utiliza una tercera tabla que haga la relación entre idcliente y idcurso.

cliente
idcliente
nombre
apellido

clientecurso (Para la relación)
idcliente
idcurso

curso
idcurso
tipocurso (supongo que esta es la descripción "php, asp, sql, Mysql, Java")

El chiste de este asunto es que tengas YA registrado los cursos en la tabla curso para que UNICAMENTE registres por cada cliente la relación.

curso
Código PHP:
idcurso       tipocurso
1               php
2               asp
3               sql
4               Mysql
5               Java 
Por ejemplo, vamos a registrar un usuario que va a tener 2 cursos (ASP, Java)
cliente
Código PHP:
idcliente      nombre     apellido
100            Helthon     Novato 
Ahora procedes a guardar los cursos que va a llevar
clientecurso
Código PHP:
idcliente    idcurso
100          2
100          5 
Eso es todo lo que tendrías que hacer.
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL
  #5 (permalink)  
Antiguo 19/01/2006, 19:09
Avatar de helthon  
Fecha de Ingreso: junio-2005
Ubicación: Lima
Mensajes: 549
Antigüedad: 18 años, 10 meses
Puntos: 7
Gracias eres todo un BrujoNic
__________________
HELTHON FUENTES
FLORERIA FLORES PERU Floresperu.com.pe
Garantizamos que cada entrega de flores será de la más alta calidad y frescura
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:53.