Actividad 9
Manejo de datos en cascada
BD II
a. Insertar registros con valores de otra tabla
(Insert - Select- Join)
b. Actualizar datos con valores de otra tabla
(Update)
c. Actualización en cascada
(Update - Join)
d. Borrar registros consultando otras tablas
(Delete - Join)
e. Borrar registros buscando coincidencia en otras tablas
(Delete - Join)
f. Borrar registros en cascada
(Delete - Join)
Bases de datos par el desarrollo de la clase
Ejercicio 1
Ejercicio2
Diapositivas con la explicación
Clase BD_II_2.pptx (683586)
Leer más: https://sistemasremington.webnode.com/informatica2/base-de-datos-ii/actividades/actividad-6/
insertar registros con valores de otras tablas
para insertar registros en la tabla cantidadcasadisquera se puede hacer dos formas:
insertar los registros uno a uno
Análisis
1 cual es le nombre de la tabla en la que va que se van ingresar los datos
cantidadcasadisquera
2 que campo(campo contiene la información solicitada ) y de qu tabla
campo: nombre
tabla: casadisquera
3. Condición (es) adicionales si las hay
Na
4. Que tabals están involucradas en la consulta y como se relacionan
tablas: cancion y casadisquera
Relación : casadisquera.idcasa_miusic=cancion.incasa_miusic
5.Comando(s) : Insert - select- join y diseñar la sintaxis mysql
Consulta
select c.nombre, count(co.idcasa_miusic)
from casadisquera as c
left join cancion as co
on c.idcasa_miusic=co.idcasa_miusic
group by c.nombre;
insert into cantidadcasadisquera
select c.nombre, count(co.idcasa_miusic) as
cantidaddecanciones
from casadisquera as c
left join cancion as co
on c.idcasa_miusic=co.idcasa_miusic
group by c.nombre;
Actualizar datos con valores de otra tabla
Siguiendo como ejemplo de las entidades canción casadisquera
1. Se pretende alterar la tabla canción para que almacene el nombre de la casa d
2. Agregar un campo llamado casadisquera en la entidad canción
alter table cancion add casadisquera
vachar(30);
3. Actualizar los valores para este campo creado en la entidad canción (casadisquera).
a.Se puede actulizar uno a uno los registros
Ejemplo: update canción set casadisquera='EMI' where
idcasa_miusic='003';
Realizando la actualización con un join
Analisis
1. cual es nombre de la tabla en la que se van actualizar los datos y con que información
tabala:canción
información: cancion.casadisquera=caasadisquera.nombre
2.Que campo(campos contiene la infrmacion solicitada) y de que tabala
campo: nombre
tabla: casadisquera
C. Actualización en cascada
(update - join)
Actualizar el código de la casa disquera EMI por 16
Análisis
1. Cual es el nombre en la que se van actualizar los datos y con que información
tabla: canción y casadisquera
Información : casadsiquera.enlacedisquera='16', cancion .codigo='16';
2. que campo(campo contiene la información solicitada) y de que tabla
campo:NA
tabla:NA
3. Condición(es) adicionales si las hay
casadisquera.nombre='EMI'
4. Que tablas están involucradas en la consulta y como se relacionan
tablas: canción y casadisquera
update cancion as n
join casadisquera as c
on n.enlacedisquera=c.codigo
set n.enlacedisquera='16', c.codigo='16'
where c.nombre='EMI';
D. Borrar registros consultando otras tablas( Delete- join)
1. Se puede hacer de dos formas:
Ejemplo:
Delete from libro where codigo=1;
2. Realizar todo en un solo paso
Borrar las canciones de la casa disquera 'EMI'
Análisis
1. Cual es el nombre de la tabla en la que se van a eliminar los datos
delete cancion
from cancion
join casadisquera
on cancion.enlacedisquera=casadisquera.codigo
where casadisquera.nombre='EMI';
E. Borrar registro buscando coincidencia en otras tablas
(Delete - join)
Teniendo las entidades canción y casadisquera
Busquemos eliminar todas la canciones cuyo código no exista en la tabla casadisquera
inser into cancion values ('007','pajarando', 'cargamo ODG', '9');
insert into cancion values ('008', 'Violeta', 'SDRT', '18');
Analisis
F. Borrar registros en cascada
(Delete - join)
Se puede borrar la información uno a uno los registro siguiendo condiciones.
se puede borrar los registros requeridos a través de una sola consulta (cascada)
Eliminar la información de la casa disquera Sony & BMG en cascada
1. Cuales son las
Comando y sintaxis
delete cancion,casadisquera
from cancion
join casadisquera
on cancion.enlacedisquera=casadisquera.codigo
where casadisquera.nombre='Sony & BMG';