0% encontró este documento útil (0 votos)
42 vistas3 páginas

Ejercicio SQL1

El documento describe una serie de pasos para crear y modificar tablas de una base de datos. Se crean tablas iniciales para profesores, cursos y alumnos con sus campos correspondientes. Luego se añaden, modifican y eliminan atributos y restricciones en las tablas, se cambia la clave primaria de una tabla, se renombra una tabla y se elimina otra. Finalmente, se crea un usuario con privilegios sobre una de las tablas y luego se le revocan los permisos de modificación.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
42 vistas3 páginas

Ejercicio SQL1

El documento describe una serie de pasos para crear y modificar tablas de una base de datos. Se crean tablas iniciales para profesores, cursos y alumnos con sus campos correspondientes. Luego se añaden, modifican y eliminan atributos y restricciones en las tablas, se cambia la clave primaria de una tabla, se renombra una tabla y se elimina otra. Finalmente, se crea un usuario con privilegios sobre una de las tablas y luego se le revocan los permisos de modificación.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3

Ejercicio Repaso 1

1. CREA LAS TABLAS: PROFESORES, CURSOS Y ALUMNOS para ellos define tu los
campos.

- PROFESORES (NIF, Nombre, Apellido1, Apellido2, Direccion, Titulacion,


Salario).
- CURSOS (Codigo, Nombre, NIF_Profesor, Maximo/Alumnos, Fecha_inicio,
Fecha_fin, Horas)
- ALUMNOS (NIF, Nombre, Apellido1, Apellido2, Direccion, Sexo,
FechaNacimiento, CodigoCurso)

CREATE TABLE PROFESORES1


(
NIF VARCHAR(9) PRIMARY KEY,
Nombre VARCHAR(50) UNIQUE,
Apellido1 VARCHAR(50),
Apellido2 VARCHAR(50),
Direccion VARCHAR(200),
Titulacion VARCHAR(80),
Salario NUMBER(6) NOT NULL
);

CREATE TABLE CURSOS


(
CODIGO VARCHAR(10) PRIMARY KEY,
Nombre VARCHAR(50) UNIQUE,
NIFPROFESOR VARCHAR(9),
MaximoAlumnos NUMBER(2),
FechaInicio DATE,
FechaFin DATE,
Horas NUMBER(4) NOT NULL,
CONSTRAINT FK_NIF1 FOREIGN KEY (NIFPROFESOR)
REFERENCES PROFESORES1(NIF),
CONSTRAINT CK_FEC CHECK (FechaFin>FechaInicio)
);
CREATE TABLE ALUMNOS2
(
NIF VARCHAR(9) PRIMARY KEY,
Nombre VARCHAR(50),
Apellido1 VARCHAR(50),
Apellido2 VARCHAR(50),
Direccion VARCHAR(200),
Sexo VARCHAR(1) CHECK(Sexo IN ('M', 'H')),
FechaNacimiento DATE,
CodigoCurso VARCHAR(10) NOT NULL REFERENCES
CURSOS(CODIGO)
);

2. EJERCICIO 2:

A) Crea un nuevo atributo llamado Edad de tipo numérico a la tabla ALUMNOS.

ALTER TABLE ALUMNOS


ADD Edad INT;

B) Modifica el campo que has creado anteriormente para que la edad del alumno o
alumna esté comprendida entre 14 y 65 años.

ALTER TABLE ALUMNOS


ADD CONSTRAINT Edad_check CHECK (Edad >= 14 AND Edad <= 65);

ALTER TABLE ALUMNOS ADD(EDAD NUMBER(3));

C) Modifica el campo Número de horas del CURSO de manera que solo pueda
haber cursos con 30, 40 o 60 horas.

ALTER TABLE CURSOS ADD CONSTRAINT Horas_check CHECK (Horas IN


(30, 40, 60));

ALTER TABLE CURSOS1 ADD CONSTRAINT CUR_NUM_CK


CHECK(HORAS IN(30, 40, 60));

D) Elimina la restricción que controla los valores que puede tomar el atributo
Sexo.

ALTER TABLE ALUMNOS DROP CONSTRAINT Sexo_check;

ALTER TABLE ALUMNOS DROP CONSTRAINT ALU_SEX_CK;


E) Elimina la columna Dirección de la tabla PROFESORES.

ALTER TABLE PROFESORES DROP COLUMN DIRECCION;

F) Cambia la clave primaria de la tabla PROFESORES por Nombre y Apellidos.

ALTER TABLE PROFESORES DROP CONSTRAINT PRO_NIF_PK;


ALTER TABLE PROFESORES ADD CONSTRAINT PRO_NOM_AP1_AP2_PK
PRIMARY KEY(Nombre, Apellido1, Apellido2);

G) Renombra la tabla PROFESORES por TUTORES.

RENAME PROFESORES TO TUTORES;

H) Elimina la tabla ALUMNOS.

DROP TABLE ALUMNOS;

I) Crea un usuario con tu nombre y clave BD02 y dale todos los privilegios sobre
la tabla CURSOS.

CREATE USER IRENEMARIA IDENTIFIED BY BD02;


GRANT ALL PRIVILEGES ON DAM.CURSOS TO IRENEMARIA ;

PARA DARLE TODOS LOS PRIVILEGIOS A IRENEMARIA :


GRANT ALL PRIVILEGES TO JOSEMARIA;

J) Ahora al usuario anterior quítale permisos para modificar o actualizar la tabla


CURSOS.

REVOKE UPDATE, ALTER ON DAM.CURSOS FROM IRENEMARIA ;

También podría gustarte