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

[SOLUCIONADO] Cúal de estas opciones para relacionar tablas creen que sea la mejor ?

Estas en el tema de Cúal de estas opciones para relacionar tablas creen que sea la mejor ? en el foro de Bases de Datos General en Foros del Web. Hola Amigos mios, he leido y leido pero tengo una confusión que no se aclarar, tengo que crear la estructura la una BD pero no ...
  #1 (permalink)  
Antiguo 04/04/2016, 22:12
Avatar de julia2021  
Fecha de Ingreso: diciembre-2014
Ubicación: Mexico
Mensajes: 152
Antigüedad: 9 años, 4 meses
Puntos: 11
Pregunta Cúal de estas opciones para relacionar tablas creen que sea la mejor ?

Hola Amigos mios, he leido y leido pero tengo una confusión que no se aclarar, tengo que crear la estructura la una BD pero no sé cual es la mejor opcion para relacionar las tablas, aqui le coloco ambos esquemas a ver por cuál se inclinan ustedes:

ESQUEMA 1:
Carreras:
id_carrera
nombre

Semestres:
id_semestre
nombre

Secciones:
id_seccion
nombre

Relacion:
id_relacion
id_carrera
id_semestre
id_seccion
ESQUEMA 2:

Carreras:
id_carrera
nombre

Semestres:
id_semestre
id_carrera
nombre

Secciones:
id_seccion
id_semestre
nombre
El el primer esquema he creado las tablas independientes y al final las he relacionado con la tabla Relaciones. En el segundo esquema he ido relacionando las tablas con su antesesora usando para ello el campo principal de la tabla anterior. Cuál es el mejor esquema a utilizar?
Mil gracias de antemano a quien sepa ayudarme

Última edición por julia2021; 06/04/2016 a las 06:55
  #2 (permalink)  
Antiguo 06/04/2016, 09:45
 
Fecha de Ingreso: abril-2016
Ubicación: C:\Usuarios\isaac
Mensajes: 33
Antigüedad: 8 años
Puntos: 1
Respuesta: Cúal DE ESTAS OPCIONES PARA RELACIONAR TABLAS CREEN QUE SEA LA MEJOR ?

Buenas julia!

Antes de nada, cuando quieres plantearte un esquema de BD (y nunca digo las cosas para que se tomen a mal) deben imaginarte la situacion real y realizar un esquema entidad-relación.

Una carrera, tiene muchos semestres; pero un semestre no tiene muchas carreras; por lo tanto la relación----> Carrera--[1:N]--Semestres

Un semestre tiene muchas secciones(lo cual me imagino que serán asignaturas), pero una seccion (a no ser que repitas 20 veces la misma asignatura -.- o haya varias partes dentro de varios cursos; pero eso lo vamos a omitir) no puede pertenecer a mas de un semestre; por lo tanto la relacion----> Semestre--[1:N]--Secciones

Mas o menos (puedo haberme equivocado o plantear mal el esquema, pero ando con el trabajo y poco me puedo parar) esta planteado el esquema. Bien, ahora te toca identificar las PK y FK.

Con esto, particularmente te recomendaría hacer el segundo esquema que tu planteas con un par de modificaciones que puedes ir deduciendo en este esquema.

Espero que te haya servido de algo este "tronco" de texto y que te vaya bien.

Un saludo!
__________________
"He intentado cambiar el mundo, pero no he encontrado el código fuente"
  #3 (permalink)  
Antiguo 06/04/2016, 09:51
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Cúal DE ESTAS OPCIONES PARA RELACIONAR TABLAS CREEN QUE SEA LA MEJOR ?

Una carrera, tiene muchos semestres; pero un semestre no tiene muchas carreras; por lo tanto la relación----> Carrera--[1:N]--Semestres

Pero un semestre puede estar en varias carreras ;) o nada mas vas a tener el semestre 1 para la carrera 1???

en la parte de las secciones, existen materias que entran en lo que es tronco comun por lo que pueden estar en mas de una carrera(por ejemplo matematicas), a mi parecer es mas practico el primer esquema, porque te permite organizar de mejor manera las relaciones existentes :)

Te dejo un pequeño esquema para manejar un horario:


Catalogos:
alumnos: id_alumno, nombre
maestro:id_maestro nombre
materias:id_materia, no_creditos, nombre
horarios:id_horario, horas
aulas:id_aula, descripcion
carrera:id_carrera, descripcion
semestre:id_semestre, descripcion


Tablas Derivadas:

Alumno_carrera
id_alumno, id_semestre, id_carrera

Horario_Maestro
id_horario_m, id_maestros, id_mat, id_horario, id_aula

Materias_carrera
id_mat_ca, id_materia, id_semestre, id_carrera

Prerequisitos_materias
id_carrera, id_materia, id_padre

Calificaciones
id_alumno, id_mat, pasada

Horarios_alumno
id_alumnos, id_mat, id_horario_m
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Última edición por Libras; 06/04/2016 a las 09:57
  #4 (permalink)  
Antiguo 07/04/2016, 18:42
Avatar de julia2021  
Fecha de Ingreso: diciembre-2014
Ubicación: Mexico
Mensajes: 152
Antigüedad: 9 años, 4 meses
Puntos: 11
Respuesta: Cúal de estas opciones para relacionar tablas creen que sea la mejor ?

isaac26lopez y Libras gracias por su apoyo, la verdad coloque otro ejemplo pues pense que era lo mismo, pero ahora me doy cuenta que no es así, pues sus respuestas me han dejado confundida. Mis disculpas por no haber sido clara. Aquí le coloco la estructura real para que por favor me apoyen.

ESQUEMA 1:
Nivel:
id_nivel, nombre (Preescolar / Primaria / Secundaria)

Grados:
id_grado, nombre (1ero, 2do, 3ero, 4to, 5to y 6to)

Secciones:
id_seccion, nombre (A, B, C)

Relaciones: id_relacion, id_nivel, id_grado, id_seccion
ESQUEMA 2:
Nivel:
id_nivel, nombre (Preescolar / Primaria / Secundaria)

Grados:
id_grado, id_nivel, nombre (1ero, 2do, 3ero, 4to, 5to y 6to)

Secciones:
id_seccion, id_grado, nombre (A, B, C)
En el primer esquema relaciono todas las tablas mediante la tabla Relaciones, en el segundo voy uniendo cada tabla con su antesesora.
Espero ser claro ahora para que por favor me puedan apoyar. Besos

Última edición por julia2021; 07/04/2016 a las 18:51
  #5 (permalink)  
Antiguo 07/04/2016, 23:42
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Cúal de estas opciones para relacionar tablas creen que sea la mejor ?

Misma respuesta, primer esquema
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #6 (permalink)  
Antiguo 08/04/2016, 00:46
Avatar de julia2021  
Fecha de Ingreso: diciembre-2014
Ubicación: Mexico
Mensajes: 152
Antigüedad: 9 años, 4 meses
Puntos: 11
Respuesta: Cúal de estas opciones para relacionar tablas creen que sea la mejor ?

Mil gracias

Etiquetas: estructura, indices, relacional, 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 02:32.