00:00:05
3
00:00:08
hola chicos bienvenidos a calle
00:00:09
compilado el día de hoy vamos a
00:00:11
continuar con el tema de modelo
00:00:13
relacional si recuerda en el vídeo
00:00:15
anterior
00:00:15
sergio nos enseñó los elementos para el
00:00:18
modelo relacional pero quedó inconcluso
00:00:20
un ejercicio así que el día de hoy vamos
00:00:23
a terminar con este ejercicio pero antes
00:00:25
tenemos que ver un tema nuevo que es
00:00:27
cardinal y that o mapeo la cardinal y
00:00:30
that o mapeo es el tipo de relación
00:00:33
entre entidades es decir cómo se van a
00:00:35
relacionar nuestras entidades cuál es la
00:00:37
relación que tienen existen cuatro tipos
00:00:40
de mateos está la relación uno a uno en
00:00:46
donde a cada elemento le toca otro
00:00:49
elemento de otra entidad supongamos que
00:00:51
los cuadros de color azul son una
00:00:54
entidad y los cuadros de color naranja
00:00:55
son otra entidad que queremos decir con
00:00:58
uno a uno que para cada cuadro azul
00:01:01
solamente y únicamente le corresponde un
00:01:04
cuadro naranja es por eso que es uno a
00:01:07
uno porque para cada cuadro azul no
00:01:09
puede haber más de una relación con otro
00:01:12
cuadro naranja
00:01:14
está la relación uno a muchos en este
00:01:17
caso la entidad azul puede tener más de
00:01:20
una relación con el cuadro naranja como
00:01:23
lo vemos aún no tiene relación con a uno
00:01:25
naranja y con a dos naranja a dos azul
00:01:29
tiene relación con a 2 naranja y a 3
00:01:31
naranja y a 3 azul solamente tiene
00:01:33
relación con a 3 naranja es decir a cada
00:01:37
entidad a cada entidad de los cuadros
00:01:40
azules le corresponde uno o varios
00:01:43
entidades naranjas
00:01:46
ahora tenemos otra relación que es
00:01:48
muchos a unos esto es lo contrario de la
00:01:51
que acabamos de ver en este caso a cada
00:01:54
entidad naranja le corresponde uno o más
00:01:58
entidades azules si se dan cuenta en
00:02:01
este caso a una naranja tiene relación
00:02:03
con a uno azul y a dos azul a dos
00:02:05
naranja tiene relación con a dos azul y
00:02:07
a tres azul y atrás naranja únicamente
00:02:10
tiene relación con a tres azul entonces
00:02:13
es una relación muchos a uno si se dan
00:02:15
cuenta esas dos relaciones son
00:02:17
exactamente lo mismo nada más que están
00:02:20
a la inversa y por último tenemos una
00:02:22
relación muchos a muchos en esta
00:02:26
relación prácticamente en las entidades
00:02:28
azules pueden tener muchas entidades
00:02:31
naranjas y las entidades naranjas pueden
00:02:34
tener muchas entidades azules así es que
00:02:37
todos contra todos en este caso si se
00:02:40
dan cuenta aún no puede tener relación
00:02:42
con a uno naranja pero de igual manera a
00:02:44
una naranja tiene relación con a uno
00:02:46
azul entonces en este caso es una
00:02:49
relación muchos amor
00:02:51
tal vez ahorita no nos quede muy claro
00:02:53
pero verán que con la práctica y
00:02:55
haciendo nuestros modelos entidades
00:02:57
relación y de igual manera programando
00:02:59
los nos va a quedar muchísimo más claro
00:03:01
y vamos a hacer unos expertos en esto
00:03:03
del mapeo ahora recordemos que sergio
00:03:06
nos mencionó que para poder crear una
00:03:08
base de datos necesitamos algo que se
00:03:10
llama reglas de negocio en este caso
00:03:13
para seguir con el ejemplo anterior
00:03:14
vamos a establecer la siguiente regla
00:03:17
una escuela desea tener una base de
00:03:19
datos que almacenen los datos
00:03:20
principales de un alumno la carrera que
00:03:23
estudia las materias que cursa y los
00:03:25
profesores que le imparten clase de
00:03:27
igual manera se desea llevar un registro
00:03:29
de las materias que imparte cada
00:03:31
profesor dentro de este texto nosotros
00:03:33
tenemos que identificar qué es lo que se
00:03:35
nos está pidiendo se nos está pidiendo
00:03:37
que hagamos una base de datos para una
00:03:39
escuela pero qué entidades tiene esta
00:03:44
escuela qué entidad necesito para poder
00:03:46
crear mi base de datos bueno se nos está
00:03:48
hablando antes que nada de un alumno se
00:03:52
nos está hablando de la carrera que
00:03:54
estudia
00:03:56
y materias y los profesores aquí también
00:04:00
nos habla de materias y profesor que ya
00:04:02
se mencionó en la parte de arriba en el
00:04:04
párrafo de arriba entonces cuáles son
00:04:07
mis entidades que yo necesito para crear
00:04:10
esta base de datos pues son las que
00:04:12
acabamos de mencionar necesitamos una
00:04:13
entidad que se llame alumno una entidad
00:04:16
que se llame carrera una entidad que se
00:04:19
llame materia y una entidad que se llama
00:04:21
profesor porque bueno pues porque
00:04:24
alumnos puedo tener muchos alumnos con
00:04:26
diferentes nombres puedo poner a juan
00:04:28
pérez
00:04:29
rosa lópez no sé podemos tener muchos
00:04:32
alumnos en carrera podemos tener
00:04:34
ingeniería en sistemas podemos tener
00:04:36
licenciatura en derecho infinidad de
00:04:38
carreras en materias podemos tener
00:04:40
programación 1 el derecho civil
00:04:44
mercadotecnia no se podemos tener varias
00:04:46
materias y profesores podemos tener
00:04:49
varios profesores
00:04:51
nos imparte en clase a nosotros como
00:04:53
alumnos pero de igual manera esos
00:04:55
profesores imparten distintas clases
00:04:57
entonces es muy importante que
00:05:00
identifiquemos las entidades que
00:05:02
necesitamos para darle solución a
00:05:04
nuestro problema una vez que
00:05:05
identificamos las entidades vamos a
00:05:08
seguir nosotros con sergio ya habíamos
00:05:10
hecho la entidad alumno en donde ya
00:05:12
habíamos puesto los atributos
00:05:15
principales del alumno o en general
00:05:18
teníamos que nuestra clave principal es
00:05:21
la matrícula del alumno tenemos el
00:05:23
nombre del alumno la edad el semestre el
00:05:26
alumno y su género esas son las
00:05:28
atributos de un alumno ahora también se
00:05:32
nos está pidiendo la carrera nosotros
00:05:35
para carrera vamos a establecer que
00:05:37
simplemente necesitamos una clave
00:05:39
primaria recordemos que toda entidad
00:05:40
debe de tener una clave primaria y en
00:05:44
este caso yo estoy estableciendo que mi
00:05:45
clave primaria es clave y un bajo sé que
00:05:48
necesito un nombre de la carrera y
00:05:51
necesito la duración de la carrera estos
00:05:53
atributos nosotros por lo general los
00:05:55
establecemos de acuerdo a las
00:05:56
necesidades del negocio
00:05:58
recuerdo las reglas que se nos hayan
00:06:00
dado en este caso para fines prácticos
00:06:02
para fines de este ejemplo nosotros
00:06:04
vamos a establecer estos atributos ahora
00:06:07
también se nos pidió la entidad profesor
00:06:10
para profesor de igual manera
00:06:12
necesitamos tener una clave primaria en
00:06:16
este caso es clave guión bajo p
00:06:17
necesitamos el nombre del profesor la
00:06:19
dirección del profesor el teléfono el
00:06:21
profesor y el horario del profesor en
00:06:24
horario simplemente es si el profesor es
00:06:27
este va en la mañana sería matutino si
00:06:29
va en la tarde sería vespertino y si
00:06:31
está en ambos horarios sería mixto y de
00:06:34
igual manera necesitamos la entidad
00:06:36
materia con los atributos clave de la
00:06:39
materia nombre de la materia y los
00:06:41
créditos de esa materia ahora sí tenemos
00:06:45
nuestras cuatro entidades pero hasta el
00:06:47
momento simplemente tenemos entidades
00:06:49
aisladas es decir no tienen ninguna
00:06:52
relación entre sí y una base de datos
00:06:55
son entidades son datos relacionados
00:06:59
entonces ahorita lo único que tenemos
00:07:01
son entidades pero sin ninguna relación
00:07:03
para hacer relaciones necesitamos
00:07:05
utilizar el rombo que vimos en la clase
00:07:09
pasada con sergio que nos enseñó los
00:07:11
elementos ahora para que nos va a servir
00:07:13
el rombo el rombo nos va a servir para
00:07:15
unir dos o más entidades en este caso yo
00:07:19
necesito saber qué materia que carrera
00:07:22
perdón está cursando el alumno entonces
00:07:25
lo que voy a hacer es unir al alumno y
00:07:28
carrera mediante el rombo ahora aquí es
00:07:33
análisis todo el modelo entidad relación
00:07:36
se basa en análisis qué relación tienen
00:07:40
un alumno y una carrera bueno pues el
00:07:43
alumno estudia una carrera entonces
00:07:46
tenemos que decir un alumno cuantas
00:07:50
carreras estudia estudia una carrera
00:07:53
y una carrera por cuántos alumnos es
00:07:57
estudiada por muchos alumnos entonces
00:08:00
aquí yo ya tengo mi relación un alumno
00:08:04
estudia una carrera y una carrera es
00:08:07
estudiada por muchos alumnos esta
00:08:10
relación es uno a muchos si se dan
00:08:14
cuenta mi entidad carrera tiene uno y
00:08:18
miente y dad alumno tiene muchos por lo
00:08:21
que es una relación uno a muchos debo de
00:08:24
establecer dentro del rombo qué tipo de
00:08:27
relación es cuando es uno a muchos se
00:08:29
pone 12 puntos n ahora qué sucede cuando
00:08:33
yo tengo una relación uno a muchos lo
00:08:38
que tengo que hacer es la clave primaria
00:08:42
de la entidad que tiene la relación uno
00:08:46
la debo de pasar como foránea a la
00:08:49
entidad que tiene la relación mucho
00:08:53
de esta manera si se dan cuenta yo acabo
00:08:57
de traer la clave primaria de carrera
00:08:59
que es clave y un bajo sé como clave
00:09:02
foránea en la entidad alumno ahora algo
00:09:06
muy importante es que los atributos no
00:09:09
pueden llamarse igual nuestros atributos
00:09:11
siempre deben de llamarse diferente por
00:09:14
lo que es una costumbre o la mayoría de
00:09:16
las personas que se dedican a las bases
00:09:18
de datos lo que hacen es poner el nombre
00:09:22
de la clave primaria y agregarle un
00:09:25
número para hacer diferencia entonces en
00:09:27
este caso como estoy haciendo referencia
00:09:28
a la clave bien bajo se pues lo puse
00:09:30
clave guión bajo c 1
00:09:33
ahora chicos algo que no debemos de
00:09:35
perder de vista es que una clave foránea
00:09:38
siempre representa una clave primaria si
00:09:41
yo estoy estableciendo una clave foránea
00:09:43
dentro de una entidad la que sea eso
00:09:46
significa que esa clave que yo estoy
00:09:48
estableciendo como foránea es clave
00:09:50
primaria en otra entidad yo lo puedo
00:09:53
decir ahí voy a poner una clave foránea
00:09:55
en esta entidad nada más porque sin
00:09:56
antojo no
00:09:58
siempre una clave primaria perdón
00:10:01
siempre una clave foránea es clave
00:10:04
primaria de otra entidad entonces hasta
00:10:08
ahorita ya terminamos la relación alumno
00:10:09
y carrera ahora vamos a seguir hacer la
00:10:12
relación alumno y profesor de igual
00:10:15
manera a las 1 mediante un rombo y aquí
00:10:17
tengo que analizar cuál es la relación
00:10:19
entre alumno y profesor un alumno toma
00:10:21
clases con muchos profesores y un
00:10:25
profesor le da clases a muchos alumnos
00:10:28
en este caso tengo una relación muchos a
00:10:32
muchos porque alumno tiene una relación
00:10:35
de muchos el profesor tiene una relación
00:10:37
de muchos entonces es muchos a muchos
00:10:40
cuando tenemos una relación muchos a
00:10:42
muchos se pone n 2 puntos m ahora qué
00:10:46
sucede cuando tengo una relación muchos
00:10:49
a muchos cuando tenemos este tipo de
00:10:51
relación lo que se hace es crear una
00:10:54
tabla intermedia nuestra tabla
00:10:56
intermedia va a tener dos claves
00:11:00
foráneas
00:11:01
la clave foránea de la entidad alumno y
00:11:05
la clave foránea de la entidad profesor
00:11:08
en la clave y en la tabla intermedia
00:11:11
podríamos llegar a meter más atributos
00:11:12
pero ahorita como estamos empezando
00:11:15
simplemente vamos a poner las claves
00:11:17
foráneas de lo que estamos uniendo a
00:11:20
quien estamos uniendo alumno y profesor
00:11:23
ahora una tabla intermedia soporta una
00:11:27
relación muchos a muchos entonces
00:11:30
siempre debe de tener las claves
00:11:33
foráneas de las entidades principales
00:11:36
sale entonces ahorita ya tenemos la
00:11:39
relación alumno y profesor las claves
00:11:42
las tablas intermedias perdón solamente
00:11:45
se crean cuando tenemos una relación
00:11:46
muchos a muchos es muy importante que lo
00:11:49
tengamos muy claro ahora vamos a hacer
00:11:52
la siguiente relación vamos a relacionar
00:11:55
a materia y alumno vamos a analizar un
00:11:59
alumno toma muchas materias
00:12:02
y una materia es tomada por muchos
00:12:06
alumnos nuevamente nos salió una
00:12:09
relación muchos a muchos por lo que
00:12:12
dentro del rombo establezco qué tipo de
00:12:14
relación es es n 2 puntos m muchos a
00:12:17
muchos que tengo que hacer bueno ya
00:12:20
aprendimos que cuando tengo una relación
00:12:23
muchos a muchos debo de establecer como
00:12:26
foráneas las claves principales de las
00:12:30
entidades a las que estoy relacionando
00:12:31
si se dan cuenta igual les estoy
00:12:34
poniendo un número estoy estableciendo
00:12:35
un número porque no se pueden llamar
00:12:38
igual los atributos entonces ya tenemos
00:12:41
dos tablas intermedias cuando nosotros
00:12:44
tenemos una relación muchos a muchos se
00:12:47
generan tal las intermedias a esto que
00:12:49
les estoy marcando aquí se le llama
00:12:51
tabla intermedia ahorita no le vamos a
00:12:53
encontrar mucho sentido a las tablas
00:12:54
intermedias pero cuando empecemos a
00:12:57
programar nos vamos a dar cuenta que
00:12:59
importante son las tablas intermedias y
00:13:01
muchas veces esas tablas son las que nos
00:13:03
causan conflictos pero ahorita no nos
00:13:06
preocupamos por eso y el primero
00:13:07
aprendamos a hacer
00:13:09
este tipo de diagramas ahora nos falta
00:13:11
una última relación recordemos que las
00:13:14
reglas del negocio nos decía que
00:13:16
interesaba saber qué materia se impartía
00:13:19
un profesor entonces necesito tener una
00:13:21
relación entre materia y profesor ahora
00:13:25
vamos a analizar un profesor puede
00:13:29
impartir muchas materias y una materia
00:13:32
puede ser impartida por muchos
00:13:35
profesores nuevamente tenemos una
00:13:37
relación muchos a muchos y ya aprendimos
00:13:40
que cuando tenemos una relación muchos a
00:13:42
muchos necesitamos traer como claves
00:13:45
foráneas las claves primarias de las
00:13:48
entidades que estoy relacionando en
00:13:50
chicos con esto ya tendríamos una base
00:13:53
de datos que va a cubrir las necesidades
00:13:55
de las reglas del negocio que se nos
00:13:57
indicó ahora chicos yo quiero
00:14:00
mencionarles algo muy importante la base
00:14:02
de datos que acabamos de hacer está bien
00:14:05
para cuando vamos empezando más adelante
00:14:08
vamos a ver temas como normalización en
00:14:11
donde nos vamos a dar cuenta que esta
00:14:12
tabla todavía no está al 100
00:14:15
le hace falta hacer algunos arreglos
00:14:17
pero como estamos aprendiendo hasta
00:14:20
ahorita está bien la base de datos y
00:14:23
bueno ya sería una base de datos que
00:14:25
funcionaría a lo mejor no de una manera
00:14:27
óptima una manera no normalizada pero
00:14:30
funcionaría más adelante vamos a
00:14:32
aprender a normalizar bueno chicos
00:14:34
espero que les haya quedado muy claro
00:14:36
las bases de datos pues realmente es
00:14:39
practicar y entender recordemos que
00:14:42
tenemos que aprender a analizar cuál es
00:14:45
la relación que tienen las entidades qué
00:14:48
es lo que lo que las une en este caso al
00:14:52
alumno y carrera que qué acciones un
00:14:54
alumno con una carrera bueno por la
00:14:55
estudia qué acción hace un alumno con un
00:14:57
profesor bueno un alumno toma clases con
00:15:00
un profesor qué relación tiene alumno
00:15:02
con una materia con un alumno estudia
00:15:04
una materia qué relación tiene materia
00:15:07
profesor bueno un profesor imparte una
00:15:09
materia chicos vamos a seguir haciendo
00:15:11
ejercicios para que esto quede aún más
00:15:13
claro no olviden la real hay acá este
00:15:15
vídeo si es que les gustó seguimos en
00:15:17
todas nuestras redes sociales como
00:15:18
twitter facebook y google+ y suscribirse
00:15:20
a su canal código
00:15:22
a
00:15:25
ah
00:15:28
no