Publicado el 24 de Junio del 2017
750 visualizaciones desde el 24 de Junio del 2017
362,5 KB
23 paginas
Creado hace 13a (11/03/2012)
c o r r e s p o n d e n c i a e n t r e c l a s e s
S B 0 6
Integridad referencial
in teg rid ad referen cial
• integridad referencial
• una clave ajena o es completamente
nula o contiene un valor
previamente almacenado en una
clave primaria
• eliminar / modificar valores de CP
puede provocar inconsistencias en
las claves ajenas
fundamentos de las bases de datos
2
in teg rid ad referen cial: b o rran d o
Borrar(f(t))
fundamentos de las bases de datos
3
dptonombreLSILenguajesTICTecnologíaCCIACienciasdninombredpto21123123EvaLSI21333555MandoLSI22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: b o rran d o
fundamentos de las bases de datos
4
dptonombreTICTecnologíaCCIACienciasdninombredpto21123123EvaLSI21333555MandoLSI22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: b o rran d o
fundamentos de las bases de datos
5
dptonombreTICTecnologíaCCIACienciasdninombredpto21123123EvaLSI21333555MandoLSI22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: b o rran d o
BD INCONSISTENTE
fundamentos de las bases de datos
6
dptonombreTICTecnologíaCCIACienciasdninombredpto21123123EvaLSI21333555MandoLSI22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: g aran tizar
• métodos para asegurar la IR
• ¿cómo evitar referencias no válidas en una clave
ajena cuando se ELIMINA o se MODIFICA una tupla?
• definiendo el comportamiento de la clave ajena frente a
borrados en la clave primaria a la que apunta
• definiciones posibles
• RECHAZAR
•
la operación completa
• ANULAR
•
los valores de clave ajena afectados
• PROPAGAR
•
la operación a las referencias afectadas
fundamentos de las bases de datos
7
in teg rid ad referen cial: g aran tizar
• ANULAR al borrar
Borrar(f(t))
fundamentos de las bases de datos
8
dptonombreLSILenguajesTICTecnologíaCCIACienciasdninombredpto21123123EvaLSI21333555MandoLSI22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: g aran tizar
• ANULAR al borrar
Borrar(f(t))
fundamentos de las bases de datos
9
dptonombreLSILenguajesTICTecnologíaCCIACienciasdninombredpto21123123Eva21333555Mando22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: g aran tizar
• ANULAR al borrar
fundamentos de las bases de datos
10
dptonombreTICTecnologíaCCIACienciasdninombredpto21123123Eva21333555Mando22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: g aran tizar
• PROPAGAR al borrar
Borrar(f(t))
fundamentos de las bases de datos
11
dptonombreLSILenguajesTICTecnologíaCCIACienciasdninombredpto21123123EvaLSI21333555MandoLSI22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: g aran tizar
• PROPAGAR al borrar
Borrar(f(t))
fundamentos de las bases de datos
12
dptonombreLSILenguajesTICTecnologíaCCIACienciasdninombredpto22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: g aran tizar
• PROPAGAR al borrar
fundamentos de las bases de datos
13
dptonombreTICTecnologíaCCIACienciasdninombredpto22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial:
mo d ifican d o
Modificar(f(t),’SUS’)
fundamentos de las bases de datos
14
dptonombreLSILenguajesTICTecnologíaCCIACienciasdninombredpto21123123EvaLSI21333555MandoLSI22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial:
mo d ifican d o
BD INCONSISTENTE
fundamentos de las bases de datos
15
dptonombreSUSLenguajesTICTecnologíaCCIACienciasdninombredpto21123123EvaLSI21333555MandoLSI22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: g aran tizar
• ANULAR al modificar
Modificar(f(t),’SUS’)
fundamentos de las bases de datos
16
dptonombreLSILenguajesTICTecnologíaCCIACienciasdninombredpto21123123EvaLSI21333555MandoLSI22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: g aran tizar
• ANULAR al modificar
Modificar(f(t),’SUS’)
fundamentos de las bases de datos
17
dptonombreLSILenguajesTICTecnologíaCCIACienciasdninombredpto21123123Eva21333555Mando22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: g aran tizar
• ANULAR al modificar
fundamentos de las bases de datos
18
dptonombreSUSLenguajesTICTecnologíaCCIACienciasdninombredpto21123123Eva21333555Mando22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: g aran tizar
• PROPAGAR al modificar
Modificar(f(t),’SUS’)
fundamentos de las bases de datos
19
dptonombreLSILenguajesTICTecnologíaCCIACienciasdninombredpto21123123EvaLSI21333555MandoLSI22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: g aran tizar
• PROPAGAR al modificar
Modificar(f(t),’SUS’)
fundamentos de las bases de datos
20
dninombredpto21123123EvaLSI21333555MandoLSI22444666Rafa21777333Kevin Costner de JesúsCCIAdptonombreSUSLenguajesTICTecnologíaCCIACienciasin teg rid ad referen cial: g aran tizar
• PROPAGAR al modificar
fundamentos de las bases de datos
21
dptonombreSUSLenguajesTICTecnologíaCCIACienciasdninombredpto21123123EvaSUS21333555MandoSUS22444666Rafa21777333Kevin Costner de JesúsCCIAin teg rid ad referen cial: d efin ir
• en el esquema de cada relación
DAR_CLASE(prof, asig)
CP (prof, asig)
CAj (prof) PROFESOR (mod: PROPAGAR,
CAj (asig) ASIGNATURA (mod: ANULAR,
bor: RECHAZAR)
bor: PROPAGAR)
•
¡las restricciones del esquema de relación pueden
hacer imposible la aplicación de una determinada
política!
fundamentos de las bases de datos
22
in teg rid ad referen cial: d efin ir
• ejemplo MySQL
create table darclase(
prof varchar(12),
asig varchar(7),
primary key (prof, asig),
foreign key (prof) references profesor(dni)
on update cascade,
foreign key (asig) references asignatura
on update set null
on delete cascade
) engine innodb;
fundamentos de las bases de datos
23
Comentarios de: Integridad referencial - Correspondencia entre clases (0)
No hay comentarios