Вы находитесь на странице: 1из 2

4.5.

Ejercicios propuestos
4.1. Crea una base de datos llamada "ejercicio4". En ella guardaremos inform
acin de artculos de revistas. De cada revista
almacenaremos el nombre, el mes y el ao, junto con un cdigo de no ms de 8 l
etras. Para cada artculo anotaremos un cdigo,
el ttulo, la revista en la que aparece, la pgina inicial y la pgina final (
se trata de una relacin 1:M, ya que cada revista
puede contener varios artculos y cada artculo slo aparecer en una revista).
Disea el diagrama Entidad-Relacin y crea las
tablas.
4.2. Aade la revista "Byte 9", del mes 10 de 1984, con cdigo "BY009".
Aade tambin la revista "PcWorld Espaa 195", del mes 2 de 2003, con cdigo "P
CWE195".
4.3. Incluye tambin los artculos:
"The IBM PC AT", con cdigo "AT", en la revista Byte 9, de la pgina 108 a l
a 111.
"Database Types", con cdigo "DbTypes", en la revista Byte 9, de la pgina 1
38 a la 142.
"12 Distribuciones Linux", con cdigo "DistLinux", en la revista PCWE195,
de la pgina 96 a la 109.
4.4. Muestra todos los artculos, ordenados por ao, mes y ttulo.
4.5. Muestra todos los artculos de revistas "Byte" que contengan la palabra "
PC" en su nombre, ordenados por ttulo.
4.6. Crea una tabla "CopiadeArticulos", con los mismos campos que la tabla A
rtculos. Usa la orden "INSERT INTO CopiadeArticulos (SELECT * FROM articulos)" pa
ra volcar a la nueva tabla todos los datos que existan en la antigua.
4.7. Borra de CopiadeArticulos aquellos artculos que comiencen en pginas por e
ncima de la 120. Muestra los nombres de artculos existentes y su pgina inicial, or
denados por nmero de pgina inicial, para comprobar que el borrado es correcto.
4.8. Borra de CopiadeArticulos aquellos artculos que aparezcan en revistas By
te. Muestra los nombres de artculos existentes y el nombre de la revista a la que
pertenecen, ordenados por revista y luego por ttulo de artculo, para comprobar qu
e el borrado es correcto.
4.9. Borra la tabla CopiadeArticulos y comprueba que ya no aparece en el sis
tema.
*-------------------------------------------------------------------------------
--------------
create database ejercicio5;
use ejercicio5;
create table revista(
idrevista int not null,
nombre varchar(35) not null,
mes numeric(2) not null,
ano numeric(4) not null,
codigo varchar(8) not null UNIQUE,
primary key (idrevista)
);
create table articulo(
idarticulo int not null auto_increment,
idrevista int not null,
art_titulo varchar(35) Not null,
art_codigo varchar(9) unique,
art_revista varchar(35),
art_paginicio varchar(15),
art_pagfinal varchar(15),
primary key (idarticulo),
INDEX (idrevista),
FOREIGN KEY (idrevista) REFERENCES revista(idrevista)
);
INSERT INTO revista (idrevista,nombre,mes,ano,codigo) VALUES (9,'Byte 9',10,1984
,'BY009');
INSERT INTO revista (idrevista,nombre,mes,ano,codigo) VALUES (195,'PcWorld Espaa
195',2,2003,'PCWE195');
INSERT INTO articulo (idrevista,art_titulo, art_codigo, art_revista, art_paginic
io, art_pagfinal) VALUES (9,'The IBM PC AT', 'AT','Byte 9','Pag 108','Pag 111');
INSERT INTO articulo (idrevista,art_titulo, art_codigo, art_revista, art_paginic
io, art_pagfinal) VALUES (9,'Database Types', 'DbTypes','Byte 9','Pag 138','Pag
142');
INSERT INTO articulo (idrevista,art_titulo, art_codigo, art_revista, art_paginic
io, art_pagfinal) VALUES (195,'12 Distribuciones Linux', 'DistLinux','PCWE195','
Pag 96','Pag 109');
--------------------------------------------------------------------------------
--------------
UPDATE personas SET nombre = 'Alberto' WHERE nombre = 'alberto';
5.2
update articulo set titulo ='DbTypes' where titulo ='DataBase Types';

Вам также может понравиться