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

repeticiones por indice en tabla mysql

Estas en el tema de repeticiones por indice en tabla mysql en el foro de Mysql en Foros del Web. hola a todos! acudo a su ayuda nuevamente, esta vez con algo que e buscado por todas partes y no logro encontrar respuesta. estoy haciendo ...
  #1 (permalink)  
Antiguo 18/02/2012, 12:51
Avatar de oscarios  
Fecha de Ingreso: septiembre-2004
Mensajes: 186
Antigüedad: 20 años, 1 mes
Puntos: 2
Pregunta repeticiones por indice en tabla mysql

hola a todos! acudo a su ayuda nuevamente, esta vez con algo que e buscado por todas partes y no logro encontrar respuesta.

estoy haciendo una aplicacion de inscripcion de usuarios al horario de un gym.
la idea es que el usuario selecciona dia y hora y se inscribe a esa clase.
pero con las siguientes condiciones
solo puedo recibir 4 inscripciones o personas por cada hora
y de esas cuatro 4 solo 2 con programa igual
el programa lo tiene cada usuario en su registro al lado del apellido.

mil gracias por lo que me puedan orientar con este caso que me tiene loco!
__________________
oscariosdw
  #2 (permalink)  
Antiguo 20/02/2012, 06:53
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: repeticiones por indice en tabla mysql

No hay una forma directa de controlar eso, debes implementar esas reglas de negoció por separado y solo permitir la inserción si se cumplen.

Con el usuario sabes el programa, luego le debes ofrecer solo horas que tengan menos de 4 inscritos y que de los inscritos solo haya uno o ninguno con el mismo programa que el usuario...

La solución más fácil pasa por programación externa directamente en sql puede ser complicado, ten encuenta los posibles problemas de concurrencia.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 20/02/2012, 08:34
Avatar de oscarios  
Fecha de Ingreso: septiembre-2004
Mensajes: 186
Antigüedad: 20 años, 1 mes
Puntos: 2
Respuesta: repeticiones por indice en tabla mysql

quimfv, mil gracias por tu respuesta, habia pensado en estas ultimas horas que se podria con una identidad referencial de 3 campos fecha, hora, programa pero que la identidad ref se pudiera repetir dos veces, tu sabes como se haria eso?
bueno yo lo llamo ident ref pero en relidad es como la llave unica, en fin tu me entiendes!
__________________
oscariosdw

Última edición por oscarios; 20/02/2012 a las 10:14
  #4 (permalink)  
Antiguo 20/02/2012, 12:05
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: repeticiones por indice en tabla mysql

Si es la llave unica no se puede repetir....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #5 (permalink)  
Antiguo 20/02/2012, 13:02
Avatar de oscarios  
Fecha de Ingreso: septiembre-2004
Mensajes: 186
Antigüedad: 20 años, 1 mes
Puntos: 2
Respuesta: repeticiones por indice en tabla mysql

Gracias mi viejo por tu ayuda, creo que lo resolvi, creando un campo al que llame token y le puse una lista de numeros de 1 a 2 y lo meti dentro la llave unica, asi solo me permite la otra info 2 veces! recursivo no? jejeje un abrazo!
__________________
oscariosdw
  #6 (permalink)  
Antiguo 20/02/2012, 15:37
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: repeticiones por indice en tabla mysql

No, creaste un campo multivaluado, que están prohibidos en las bases de datos relacionales.
Lo que tienes, según se infiere de tu solución, es un serio problema de diseño de la base, y mucho desconocimiento del modelo Entidad_relación aplicado a las bases de datos.

Dicho en otras palabras: Lo que has hecho es cualquier cosa, menos una base de datos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 20/02/2012, 15:42
Avatar de oscarios  
Fecha de Ingreso: septiembre-2004
Mensajes: 186
Antigüedad: 20 años, 1 mes
Puntos: 2
Respuesta: repeticiones por indice en tabla mysql

gnzsoloyo.... gracias por tu respuesta, pero no me ayudo mucho!
__________________
oscariosdw
  #8 (permalink)  
Antiguo 20/02/2012, 15:51
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: repeticiones por indice en tabla mysql

No te puedo ayudar mucho porque no has dado suficiente información como para empezar. No somos adivinos y tampoco estamos trabajando en tu PC.

Describe:
1) Tablas involucradas (estructura de CREATE TABLE, no descripciones literarias).
2) Relaciones no declaradas por PK/FK, restricciones de datos y toda otra constraint usada.
3) Reglas de negocio que se deben cumplir, dónde las determinas (software o Base) y cómo.
4) Muestra el código SQL (no programación, que es off-topic) que has probado.

En cuanto al modelo entidad-Relación aplicado a la sbases de datos, puedes leer en Wikipedia el artículo dedicado a ese tema oel de Bases de Datos Relacionales.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #9 (permalink)  
Antiguo 20/02/2012, 15:54
Avatar de oscarios  
Fecha de Ingreso: septiembre-2004
Mensajes: 186
Antigüedad: 20 años, 1 mes
Puntos: 2
Respuesta: repeticiones por indice en tabla mysql

ok!!! de nuevo muchas gracias.
__________________
oscariosdw

Etiquetas: indice, repeticiones, tabla
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 15:50.