ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Transformar A Modelo Relacional Un Modelo Entidad Relación


Enviado por   •  22 de Octubre de 2014  •  826 Palabras (4 Páginas)  •  407 Visitas

Página 1 de 4

Transformar a Modelo Relacional el siguiente Modelo Entidad Relación Mostrado, posteriormente transfórmelo a Modelo Físico de base de datos.

Solución:

Modelo Relacional:

Estudiante(primerNombre,segundoNombre,primerApellido,segundoApellido, Senda, Departamento, Municipio, Colonia, Pasaje, Calle, Poligono, NumeroCasa, carrera, carnet)

Asignatura(codigoAsignatura, nombre, correlativo, UV, ordenPensum,nombreFacultad)

Estudiante_asignatura(carnet, códigoAsigantura)

Facultad(nombre, primerNombre, SegundoNombre, primerApellido, SegundoApellido)

Docente(codigoDocente,primerNombre,segundoNombre,primerApellido,segundoApellido,nombreFacultad)

Asignatura_Docente(códigoAsignatura, codigoDoc)

Email_Estudiante(email, carnet)

Teléfono_Estudiante(telefono, carnet)

Seccion(seccion, codigoAsg)

Email_ docente(email, codigoDoc)

Teléfono_Docente(teléfono,CodigoDoc)

Modelo Físico:

Create database Estudiantes;

go

use Estudiantes;

go

create table Estudiantes(Primer_nombre varchar(20) not null, Segundo_nombre varchar(20), Primer_apellido varchar(20) not null, Segundo_apellido varchar(20), Senda varchar(3) null, Departamento varchar(30) not null, Municipio varchar(30) not null, Colonia varchar(50) null, Pasaje varchar(5), Calle varchar(50), Polígono varchar(5), Numero_casa int, Carrera varchar(75) not null, Carnet varchar(12) not null PRIMARY KEY);

create table Facultad(Nombre_facultad varchar(75) not null PRIMARY KEY, Primer_nombre varchar(20) not null, Segundo_nombre varchar(20), Primer_apellido varchar(20) not null, Segundo_apellido varchar(20));

create table Asignatura(codigoAsignatura varchar(10) not null PRIMARY KEY, Nombre varchar(75) not null, Correlativo int not null, Uv int not null, Orden_pensum varchar(12) not null, Nombre_facultad varchar(75) not null FOREIGN KEY REFERENCES FACULTAD);

create table Estudiante_Asignatura(Carnet varchar(12) not null, codigoAsignatura varchar(10) not null, PRIMARY KEY(Carnet,codigoAsignatura));

create table Docente(Codigo_docente varchar(5) not null PRIMARY KEY, Primer_nombre varchar(20) not null, Segundo_nombre varchar(20), Primer_apellido varchar(20) not null, Segundo_apellido varchar(20), Nombre_facultad varchar(75) not null FOREIGN KEY REFERENCES FACULTAD);

create table Asignatura_Docente(codigoAsignatura varchar(10) not null,Codigo_docente varchar(5) not null,PRIMARY KEY(codigoAsignatura,Codigo_docente));

create table Email_Estudiante(email varchar(50) not null, Carnet varchar(12) not null, PRIMARY KEY(email,Carnet));

create table Teléfono_Estudiante(Telefono varchar(9) not null, Carnet varchar(12) not null, PRIMARY KEY(Telefono,Carnet));

create table Seccion(Seccion int not null, codigoAsignatura varchar(10) not null, PRIMARY KEY(Seccion,codigoAsignatura));

create table Email_Docente(email varchar(50) not null, Codigo_docente varchar(5) not null, PRIMARY KEY(email,Codigo_docente));

create table Telefono_Docente(Codigo_docente varchar(5) not null, Telefono varchar(9) not null, PRIMARY KEY(Codigo_docente,Telefono));

Asumiendo que habíamos ejecutado todo el script Sql que se mostró anteriormente, quiero que aprovechemos para que a través de sintaxis del lenguaje sql hagamos modificación a las tablas ya creadas y agreguemos llaves foráneas a las que a continuación se señalan:

• Estudiante_Asignatura

• Asignatura_Docente

• Email_Estudiante

• Teléfono_Estudiante

• Seccion

• Email_Docente

• Telefono_Docente

A continuación muestro el diagrama de la base de datos de como esta actualmente se encuentra, vea que las tablas que menciono que debemos modificar no se encuntran relacionadas con ninguna otra, la razón es sencilla: NO EXISTE LLAVE FORÁNEA EN NINGUNA DE ELLAS, POR ESO NO ES POSIBLE QUE TENGAN COMUNICACIÓN Y ESTÁN SUELTAS, POR ENDE PODRÍA DECIRSE QUE NO SON RELACIONALES.

Vea el diagrama:

Como puede ver no están relacionadas.

Entonces haremos modificación a cada tabla, así:

Alter table Estudiante_Asignatura add foreign key (Carnet) references Estudiantes;

Alter table Estudiante_Asignatura

...

Descargar como (para miembros actualizados)  txt (8.1 Kb)  
Leer 3 páginas más »
Disponible sólo en Clubensayos.com