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

2 llaves foraneas que cambien al tiempo?

Estas en el tema de 2 llaves foraneas que cambien al tiempo? en el foro de Mysql en Foros del Web. Hola, tengo un problema con mi BD, tengo una tabla de notas, y hago referencia al estudiante que tiene la nota y al grupo al ...
  #1 (permalink)  
Antiguo 21/04/2010, 14:22
 
Fecha de Ingreso: agosto-2006
Mensajes: 15
Antigüedad: 17 años, 8 meses
Puntos: 0
2 llaves foraneas que cambien al tiempo?

Hola, tengo un problema con mi BD, tengo una tabla de notas, y hago referencia al estudiante que tiene la nota y al grupo al que pertenece, para poder borrar al tiempo las notas de todo un grupo.

el problema en que necesito que, si el estudiante cambia de grupo, se actualice sola, pero si hago una llave foranea, esto no pasa.

opté por solo poner el codigo de estudiante, y hacer una vista con todos los datos referenciados, pero no puedo hacer esto con la vista: "delete from vista where grupo = 1"

entonces no se que hacer, algún concejo?
  #2 (permalink)  
Antiguo 21/04/2010, 15:04
 
Fecha de Ingreso: agosto-2006
Mensajes: 15
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: 2 llaves foraneas que cambien al tiempo?

Hola, me contesto a mi mismo, jeje.

para mi caso particular, si quiero borrar de una tabla, pero la clasificación está en la vista:

delete tabla from tabla,vista where <condiciones> and tabla.tablaid = vista.tablaid

por si alguien tiene la duda :P
  #3 (permalink)  
Antiguo 21/04/2010, 16:20
Avatar de webness  
Fecha de Ingreso: enero-2009
Ubicación: BOGOTA
Mensajes: 312
Antigüedad: 15 años, 3 meses
Puntos: 5
Respuesta: 2 llaves foraneas que cambien al tiempo?

yo me atreveria a tener una tabla curso_estudiante con los campos PK_CURSO_ESTUDIANTE, FK_PK_ESTUDIANTE,FK_PK_CURSO .... asi de ese modo en la tabla notas tendria una referencia solamente a PK_CURSO_ESTUDIANTE, de ese modo si el estudiante cambia de curso, pues no tengo necesidad de actualizar nada en notas
  #4 (permalink)  
Antiguo 21/04/2010, 16:21
Avatar de webness  
Fecha de Ingreso: enero-2009
Ubicación: BOGOTA
Mensajes: 312
Antigüedad: 15 años, 3 meses
Puntos: 5
Respuesta: 2 llaves foraneas que cambien al tiempo?

Agradezco si me dan karma
  #5 (permalink)  
Antiguo 22/04/2010, 12:48
 
Fecha de Ingreso: agosto-2006
Mensajes: 15
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: 2 llaves foraneas que cambien al tiempo?

pues en este caso particular, no sirve de mucho, es en otros casos donde las relaciones son muchas -> muchas que se hace una tercera tabla, pero aquí eso se soluciona con poner en la tabla estudiantes el campo de grupo, y la relación solo se hace con el código de estudiante.
  #6 (permalink)  
Antiguo 22/04/2010, 13:30
Avatar de webness  
Fecha de Ingreso: enero-2009
Ubicación: BOGOTA
Mensajes: 312
Antigüedad: 15 años, 3 meses
Puntos: 5
Respuesta: 2 llaves foraneas que cambien al tiempo?

eso funciona para un periodo academico, y cuando el estudiante pase a otro semestre, periodo un año academico, donde los grupos sean diferentes que pasara?
  #7 (permalink)  
Antiguo 22/04/2010, 14:04
 
Fecha de Ingreso: agosto-2006
Mensajes: 15
Antigüedad: 17 años, 8 meses
Puntos: 0
Respuesta: 2 llaves foraneas que cambien al tiempo?

las notas van ligadas a otros datos que llevan el registro del año, curso, materia, etc...
  #8 (permalink)  
Antiguo 22/04/2010, 17:31
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: 2 llaves foraneas que cambien al tiempo?

Sería de mucha ayuda y una buena idea que postearas la estructura real de las tablas involucradas, así evitamos ambigüedades en las explicaciones.
Y me refiero al CREATE TABLE..., y no a una descripción somera.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: llaves, foreignkey
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 23:34.