Base de Datos. Creación de tabla
IvailoTarea9 de Marzo de 2019
336 Palabras (2 Páginas)171 Visitas
BD02
Introducción 1
Creación de tablas 2
Modificación
Introducción:
He iniciado sesión con el usuario administrador estándar de Oracle Express (SYSTEM) y he utilizado la contraseña que establecido durante el proceso de instalación.
Una vez dentro, he accedido al menú Application Express de este sistema gestor de base de datos y he creado un nuevo usuario para realizar la actividad:
[pic 1][pic 2]
Mi usuario es Tarea2UserDatabase
[pic 3][pic 4]
Accedo a Application Express con los datos de mi nuevo usuario:
[pic 5][pic 6]
Creación de tabla:
Comienzo por Crear la tabla Profesores porque no depende de otras tablas y que contiene siguientes campos: Nombre, Apellido1, Apellido2, NIF, Dirección, Titulación, Salario.
La sentencia a utilizar sería:
CREATE TABLE PROFESORES (
NOMBRE VARCHAR2 (10) UNIQUE,
APELLIDO1 VARCHAR2 (10),
APELLIDO2 VARCHER2 (10),
NIF VARCHAR2 (9),
CONSTRAINT PK_nif_profesores PRIMARY KEY (NIF)
DIRRECCION VARCHAR2 (15),
TITULO VARCHAR2 (15),
SALARIO_Profesores NUMBER (8) NOT NULL,);
Al pegar en la ventana de comandos run, observamos un mensaje confirmando la creación de la tabla.
CREATE TABLE CURSOS (
NOMBRE_curso VARCHER (50) UNIQUE,
Codigo_ curso INT,
CONSTRAINT PK_CODIGO_CURSO PRIMARY KEY,
NIF_ PROFESORES VARCHAR2 (9),
CONSTRAINT FK_NIF_PROFESOR REFERENCES PROFESORES (NIF_PROFESOR),
MAXIMO_ALUMNOS NUMBER (3),
FECHA_INICIO DATE,
FECHA_FIN DATE,
Numero_horas INT NOT NULL,
CONSTRAINT CHK_fecha_curso CHECK (Fecha_inicio < Fecha_Final));
CREATE TABLA ALUMNOS (
NOMBRE VARCHER2 (15) UNIQUE,
APELLIDO1VARCHER2 (15),
APELLIDO2 VARCHER2 (15),
CONSTRAINT PK_ALUMNO_NIF PRIMARY KEY,
DIRRECION VARCHAR (30),
SEXO VARCHAR2 (1),
FECHA_NACIMIENTO DATE,
CURSO VARCHAR (50) NOT NULL,
CONSTRAINT CHK_ALUMNO_SEXO CHECK (SEXO IN (`H`, ´M´),
REFERENCES CURSOS (COD_CURSO));
Las tablas creadas pueden verse en el explorador de objetos: SQL Workshop/Object Browser o desde el menú.
Modificaciones tablas
- Para crear un nuevo atributo llamado Edad de tipo numérico a la tabla ALUMNOS.
ALERT TABLE ALUMNOS ADD EDED NUMBER (3);
- Para añadir las siguientes restricciones, ejecutamos las sentencias indicadas en cada apartado:
- Que el campo que se creado anteriormente para la edad del alumno este comprendido entre 14 y 65 años.
ALTER TABLE ALUMNOS ADD
CONSTRAINT ALU_EDA_CH CHEAK) EDAD BETWEEN 14 AND 65);
- QUE EL CAMPO Número de horas del curso de manera que solo puede haber cursos con 30,40 o 60 horas.
Alter table cursos add
Constraint cur_num_horas_ck check (NUM_HORAS IN (30,40,60));
...