View
2.380
Download
1
Category
Preview:
DESCRIPTION
Resolución del Caso de Estudio Por: Argenis Riofrio
Citation preview
ESCUELA DE CIENCIAS DE LA COMPUTACION
DISEÑO FÍSICO DE BASE DE DATOS
RELACIONALESRELACIONALES
CASO DE ESTUDIO
Easy Drive School of Motoring
Argenis Riofrío
• MODELO RELACIONAL:
– En el proceso del modelado anterior obtuvimos como salida un modelo relacional que nos servirá como punto de partida para comenzar inmediatamente con el modelo físico ya que sin
Argenis Riofrío
inmediatamente con el modelo físico ya que sin este se nos hará difícil y casi imposible el desarrollo del modelo físico.
– Dicho modelo relacional se lo mostrará a continuación.
• Una vez que tenemos el modelo relacional el primer paso que realizamos el Traducir el
modelo lógico de datos al SGBD seleccionado.
• El objetivo principal de esto es generar un
Argenis Riofrío
• El objetivo principal de esto es generar un esquema de base de datos relacional que se pueda implementar a un SGBD.
• Es te proceso tiene varios paso dentro del mismo que son:
• DISEÑAR LAS RELACIONES BASE
– Lo que queremos hacer con esto es decir cómo
Argenis Riofrío
– Lo que queremos hacer con esto es decir cómo representar las relaciones base identificadas en el modelo lógico de los datos dentro del SGBD seleccionado.
1. DISEÑO DE LAS RELACIONES
Argenis Riofrío
BASE
DBDL PARA LA RELACIÓN SUCURSAL
Domain Sucursal_Id: entero, de rango de 1 - 50
Domain Sucursal_Edif_No: entero, en el rango 1 - 99
Domain Sucursal_Telf: cadena de caracteres de longitud variable, longitud 15
Argenis Riofrío
Domain Sucursal_Telf: cadena de caracteres de longitud variable, longitud 15
Domain Sucursal_Fax: cadena de caracteres de longitud variable, longitud 15
Domain Sucursal_Direc: cadena de caracteres de longitud variable, longitud 30
Domain Sucursal_Ciudad cadena de caracteres de longitud variable, longitud 15
Sucursal_Id: Identificación de sucursal NOT NULL
Sucursal_Edif_No: Número de edificio NOT NULL
SUCURSAL
Argenis Riofrío
Sucursal_Telf: Teléfono de la sucursal NOT NULL
Sucursal_Fax: Fax de la sucursal NULL
Sucursal_Direc: Dirección de la sucursal NOT NULL
Sucursal_Ciudad Ciudad de la sucursal NOT NULL
DBDL PARA LA RELACIÓN CLIENTE
Domain Cliente_Id: entero, de rango de 1 - 5000
Domain Cliente_Cedula: cadena de caracteres de longitud variable, longitud 10
Argenis Riofrío
Domain Cliente_Nombres: cadena de caracteres de longitud variable, longitud 25
Domain Cliente_Apellidos: cadena de caracteres de longitud variable, longitud 25
Domain Cliente_Direc: cadena de caracteres de longitud variable, longitud 30
Domain Cliente_Ciudad cadena de caracteres de longitud variable, longitud 15
CLIENTECliente_Id: Identificación de cliente NOT NULL
Cliente_Cedula: Cedula del cliente (ident. secundario) NOT NULL
Cliente_Nombres: Nombres del cliente NOT NULL
Argenis Riofrío
Cliente_Nombres: Nombres del cliente NOT NULL
Cliente_Apellidos: Apellidos del cliente NULL
Cliente_Direc: Dirección del cliente NULL
Cliente_Ciudad Ciudad de residencia del cliente NULL
• Este mismo proceso se va a seguir para todas las relaciones, lo que nos falta de agregar aquí son las restricciones que se presente, también debemos identificar claves primarias (PK), foráneas (FK), y alternativas si el SGBD así lo
Argenis Riofrío
foráneas (FK), y alternativas si el SGBD así lo permitiera.
• Esto se ve a continuación solo para el caso de la relación notas mostrada en el diagrama ER.
Notas(
IdCliente IdentificadorCliente NOT NULL,
IdStaff IdentificadorStaff NOT NULL,
IdCoche IdentificadorCoche NOT NULL,
IdPeriodo IdentificadorCoche NOT NULL,
Argenis Riofrío
IdPeriodo IdentificadorCoche NOT NULL,
ExTeorico ExamenTeorico NULL,
ExPráctico ExamenTeorico NULL,
Resultado Resultado NOT NULL DEFAULT “I”,
Asistencias Asistencias NOT NULL DEFAULT 0,
NroRepeticiones NumeroRepeticiones NOT NULL DEFAULT 0,
…
PRIMARY KEY (IdCliente, IdStaff, IdCoche, IdPeriodo),
FOREING KEY (IdStaff) REFERENCES Staff(IdStaff),
FOREING KEY (IdCoche) REFERENCES
Coche(IdCoche),
FOREING KEY (IdPeriodo) REFERENCES
Argenis Riofrío
FOREING KEY (IdPeriodo) REFERENCES
Periodo(IdPeriodo)
);
SCRIPTS
Argenis Riofrío
SCRIPTS• En este caso solo colocaremos algunos
referentes a las siguientes tablas
• USE [BaseDeDatos_Pruebas]• GO
• SET ANSI_NULLS ON• GO• SET QUOTED_IDENTIFIER ON• GO• CREATE TABLE [dbo].[Sucursal](
Argenis Riofrío
• CREATE TABLE [dbo].[Sucursal](• [Sucursal_Id] [int] NULL,• [Sucursal_Edif_No] [int] NULL,• [Sucursal_Telf] [nvarchar](15) COLLATE Latin1_General_BIN NOT NULL,• [Sucursal_Fax] [nvarchar](15) COLLATE Latin1_General_BIN NOT NULL,• [Sucursal_Direc] [nvarchar](30) COLLATE Latin1_General_BIN NOT NULL,• [Sucursal_Ciudad] [nvarchar](15) COLLATE Latin1_General_BIN NOT NULL• ) ON [PRIMARY]
PRIMARY KEY (sucursalNo),FOREIGN KEY (idEmpleado) REFERENCES
Empleado(IdEmpleado) ON UPDATE CASCADE
ON DELETE NO ACTION );
Argenis Riofrío
ON DELETE NO ACTION );
Recommended