Taller Base de Datos
Taller Base de Datos
Taller Base de Datos
ACTIVIDAD EN CONTEXTO
Segunda entrega
Presentado por:
Estudiantes
Docente
Luis Ernesto Leyva Camargo
06 de septiembre de 2020
i
Base de datos para la administración de un taller mecánico.
RESUMEN
ii
Base de datos para la administración de un taller mecánico.
ABSTRACT
iii
Base de datos para la administración de un taller mecánico.
INDICE
JUSTIFICACIÓN DE LA INVESTIGACIÓN 8
PLANTEAMIENTO DEL PROBLEMA Y PREGUNTAS DE INVESTIGACIÓN 10
OBJETIVOS 11
Objetivo General......................................................................................................................................11
Objetivos específicos.............................................................................................................................11
DISEÑO CONCEPTUAL 12
1. Identificación de entidades, atributos y relaciones..............................................12
2. Construcción del modelo conceptual..............................................................................13
3. Proceso de normalización.....................................................................................................14
3.1. Base de datos no normalizada 14
3.2. Primera Forma Normal (1FN) 16
3.3. Segunda Forma Normal (2FN) 19
3.4. Tercera Forma Normal (3FN) 22
4. Construcción del modelo lógico.........................................................................................26
4.1. Esquema relacional 27
5. Diseño Físico.................................................................................................................................29
5.1. Diccionario de datos 30
5.2. Reglas de negocio 33
5.2.1. Productividad en las transacciones 35
5.2.2. Tiempo de respuesta 36
5.2.3. Espacio en Disco 37
5.2.4. Tipos de archivos 37
5.2.5. Memoria principal 39
5.2.6. Criterios para selección de SGBD 40
6. SQL......................................................................................................................................................41
6.1. Creación de la base de datos 41
6.2. Creación de tablas 41
6.3. Creación de funciones, procedimientos, cursores, triggers 44
6.4. Consultas pertinentes según el caso 46
7. Informe de pruebas..................................................................................................................47
8. Aplicación de ACID al caso...................................................................................................47
9. Análisis de datos.........................................................................................................................47
iv
Base de datos para la administración de un taller mecánico.
v
Base de datos para la administración de un taller mecánico.
ÍNDICE DE TABLAS
vi
Base de datos para la administración de un taller mecánico.
ÍNDICE DE FIGURAS
vii
Base de datos para la administración de un taller mecánico.
JUSTIFICACIÓN DE LA INVESTIGACIÓN
8
Base de datos para la administración de un taller mecánico.
9
Base de datos para la administración de un taller mecánico.
10
Base de datos para la administración de un taller mecánico.
OBJETIVOS
Objetivo General
Objetivos específicos
11
Base de datos para la administración de un taller mecánico.
DISEÑO CONCEPTUAL
12
Base de datos para la administración de un taller mecánico.
13
Base de datos para la administración de un taller mecánico.
Figura 1
Diseño Conceptual: Modelo Entidad Relación, notación Chen
Hora de
Documento Apellidos Nombre Matrícula
ingreso
Fecha de
Teléfono Dirección Color Módelo
Asigna ingreso
Horas de Horas
empleadas
servicio Utilidad Horas
Estimada empleadas
La figura 1 muestra el Modelo Entidad Relación de la actividad en contexto, con notación Chen.
3. Proceso de normalización
14
Base de datos para la administración de un taller mecánico.
Tabla 1
Datos no normalizados
Tabla Servicio
No Nombre Campo Tipo Longitud Tipo llave
Clave
N01 Numero servicio Numeric 30
principal
N02 Fecha_ingreso_SEV Date 50
N03 Hora_Ingreso_SEV Dateate 20
N04 Documento_EMP Numeric 20 Llave Foranea
Tabla Cliente
No Nombre Campo Tipo Longitud Tipo llave
Clave
C01 Documento_ID Numeric 30
principal
C02 Nombre_ID Varchar 50
C03 Apellidos_ID Varchar 50
C04 Telefono_ID Numeric 10
C05 Direccion_ID Varchar 80
Tabla Vehículo
No Nombre Campo Tipo Longitud Tipo llave
Clave
V01 Matricula_ID Varchar 10
principal
V02 Color_ID Varchar 30
V03 Modelo_ID Date 20
Tabla Empleado
No Nombre Campo Tipo Longitud Tipo llave
Clave
E01 Documento_EMP Numeric 30
principal
E02 Disponible_EMP Varchar 50
E03 No_disponible_EMP Varchar 50
Tabla Hora de Servicio
No Nombre Campo Tipo Longitud Tipo llave
Clave
H01 Numero_SEV Numeric 30
Foránea
15
Base de datos para la administración de un taller mecánico.
16
Base de datos para la administración de un taller mecánico.
17
Base de datos para la administración de un taller mecánico.
Tabla 1
Primera Forma Normal
Tabla Servicio
No Nombre Campo Tipo Longitud Tipo llave
Clave
N01 Numero_SEV Numeric 30
principal
N02 Matricula_ID Varchar 10 Clave Foránea
N03 Fecha_ingreso_SEV Date 50
N04 Hora_Ingreso_SEV Dateate 20
N05 Documento_EMP Numeric 20 Clave Foránea
N06 Horas_FACT Numeric 20
N07 Descripcion_FACT Varchar 100
Tabla Cliente
No Nombre Campo Tipo Longitud Tipo llave
Clave
C01 Documento_ID Numeric 30
principal
C02 Nombre_ID Varchar 50
C03 Apellidos_ID Varchar 50
C04 Telefono_ID Numeric 10
C05 Direccion_ID Varchar 80
Tabla Vehículo
No Nombre Campo Tipo Longitud Tipo llave
Clave
V01 Matricula_ID Varchar 10
principal
V02 Color_ID Varchar 30
V03 Modelo_ID Date 20
Tabla Empleado
No Nombre Campo Tipo Longitud Tipo llave
Clave
E01 Documento_EMP Numeric 30
principal
E02 Disponible_EMP Varchar 50
E03 No_disponible_EMP Varchar 50
Tabla Repuesto
No Nombre Campo Tipo Longitud Tipo llave
18
Base de datos para la administración de un taller mecánico.
Clave
R01 Referencia_REP Numeric 20
Principal
R02 Descripción Varchar 100
R03 Marca Varchar 100
R04 Precio Varchar 50
Tabla Factura
No Nombre Campo Tipo Longitud Tipo llave
Clave
F01 Numero_FAC Numeric 30
Principal
Clave
F02 Numero_SEV Varchar 100
Foránea
Clave
F03 Documento_ID Varchar 30
Foránea
Clave
F04 Matricula_ID Numeric 10
Foránea
Clave
F05 Horas_FACT Numeric 20
Foránea
Clave
F06 Referencia_REP Numeric 20
Foránea
F08 Utilidad_EST Varchar 50
F09 IVA_19 Varchar 20
La tabla 2 muestra los datos en primera forma normal para la entidad Servicio y la entidad
Factura
19
Base de datos para la administración de un taller mecánico.
Tabla 2
Segunda Forma Normal
Tabla Servicio
No Nombre Campo Tipo Longitud Tipo llave
Clave
N01 Numero_SEV Numeric 30
principal
N02 Matricula_ID Varchar 10 Clave Foránea
N03 Fecha_ingreso_SEV Date 50
N04 Hora_Ingreso_SEV Dateate 20
N05 Documento_EMP Numeric 20 Clave Foránea
N06 Horas_FACT Numeric 20
N07 Descripcion_FACT Varchar 100
Tabla Cliente
No Nombre Campo Tipo Longitud Tipo llave
Clave
C01 Documento_ID Numeric 30
principal
C02 Nombre_ID Varchar 50
C03 Apellidos_ID Varchar 50
C04 Telefono_ID Numeric 10
C05 Direccion_ID Varchar 80
20
Base de datos para la administración de un taller mecánico.
Tabla Vehículo
No Nombre Campo Tipo Longitud Tipo llave
Clave
V01 Matricula_ID Varchar 10
principal
V02 Color_ID Varchar 30
V03 Modelo_ID Date 20
Tabla Empleado
No Nombre Campo Tipo Longitud Tipo llave
Clave
E01 Documento_EMP Numeric 30
principal
E02 Disponible_EMP Varchar 50
E03 No_disponible_EMP Varchar 50
Tabla Repuesto
No Nombre Campo Tipo Longitud Tipo llave
Clave
R01 Referencia_REP Numeric 20
Principal
R02 Descripción Varchar 100
R03 Marca Varchar 100
R04 Precio Varchar 50
R05 Total_REP Varchar 50
Tabla Factura
No Nombre Campo Tipo Longitud Tipo llave
Clave
F01 Numero_FAC Numeric 30
Principal
Clave
F02 Numero_SEV Varchar 100
Foránea
Clave
F03 Documento_ID Varchar 30
Foránea
21
Base de datos para la administración de un taller mecánico.
Clave
F04 Matricula_ID Numeric 10
Foránea
Clave
F05 Horas_FACT Numeric 20
Foránea
Clave
F06 Referencia_REP Numeric 20
Foránea
F08 Utilidad_EST Varchar 50
F09 IVA_19 Varchar 20
La tabla 4 muestra los datos en segunda forma normal para la entidad Servicios Repuestos
Una vez cumplidos las formas normales 1FN y 2FN seguimos el proceso
de normalización de la Base de Datos para la administración de un taller
mecánico establecemos las reglas para simplificar aún más la base de
datos teniendo en cuenta las siguientes reglas.
22
Base de datos para la administración de un taller mecánico.
Tabla 3
Tercera Forma Normal
Tabla Servicio
No Nombre Campo Tipo Longitud Tipo llave
Clave
N01 Numero_SEV Numeric 30
principal
N02 Matricula_ID Varchar 10 Clave Foránea
N03 Fecha_ingreso_SEV Date 50
N04 Hora_Ingreso_SEV Dateate 20
N05 Documento_EMP Numeric 20 Clave Foránea
N06 Horas_FACT Numeric 20
N07 Descripcion_FACT Varchar 100
Tabla Cliente
No Nombre Campo Tipo Longitud Tipo llave
Clave
C01 Documento_ID Numeric 30
principal
C02 Nombre_ID Varchar 50
C03 Apellidos_ID Varchar 50
C04 Telefono_ID Numeric 10
C05 Direccion_ID Varchar 80
Tabla Vehículo
No Nombre Campo Tipo Longitud Tipo llave
Clave
V01 Matricula_ID Varchar 10
principal
V02 Color_ID Varchar 30
V03 Modelo_ID Date 20
Tabla Empleado
No Nombre Campo Tipo Longitud Tipo llave
Clave
E01 Documento_EMP Numeric 30
principal
E02 Disponible_EMP Varchar 50
E03 No_disponible_EMP Varchar 50
Tabla Repuesto
No Nombre Campo Tipo Longitud Tipo llave
R01 Referencia_REP Numeric 20 Clave
23
Base de datos para la administración de un taller mecánico.
Principal
R02 Descripción Varchar 100
R03 Marca Varchar 100
R04 Precio Varchar 50
R05 Total_REP Varchar 50
Tabla Factura
No Nombre Campo Tipo Longitud Tipo llave
Clave
F01 Numero_FAC Numeric 30
Principal
Clave
F02 Numero_SEV Varchar 100
Foránea
Clave
F03 Documento_ID Varchar 30
Foránea
Clave
F04 Matricula_ID Numeric 10
Foránea
Clave
F05 Horas_FACT Numeric 20
Foránea
Clave
F06 Referencia_REP Numeric 20
Foránea
F08 Utilidad_EST Varchar 50
F09 IVA_19 Varchar 20
24
Base de datos para la administración de un taller mecánico.
La Desnormalización
26
Base de datos para la administración de un taller mecánico.
27
Base de datos para la administración de un taller mecánico.
Figura 2
Diseño Conceptual: Modelo Entidad Relación, notación Chen
28
Base de datos para la administración de un taller mecánico.
5. Diseño Físico
29
Base de datos para la administración de un taller mecánico.
Identifica los procesos donde se emplean los datos y los sitios donde se
necesita el acceso inmediato a la información, se desarrolla durante el
análisis de flujo de datos y auxilia a los analistas que participan en la
determinación de los requerimientos del sistema, su contenido también
se emplea durante el diseño.
Tabla 4
Diccionario de datos
30
Base de datos para la administración de un taller mecánico.
Tabla 5
Diccionario de datos
TABLA O
ATRIBUTO O
TABLA TIPO DE DATO NULO LONGITUD LLAVE DESCRIPCIÓN ENTIDAD
CAMPO
FORANEA
NOT Clave
Numero_SEV Numeric 30
NULL principal
NOT Clave
Matricula_ID Varchar 10 Entidad Vehículo
NULL Foránea
NOT
Fecha_ingreso_SEV Date 50
NULL
NOT
Servicio Hora_Ingreso_SEV Dateate 20
NULL
NOT
Documento_EMP Numeric 20
NULL
NOT
Horas_FACT Numeric 20
NULL
NOT
Descripcion_FACT Varchar 100
NULL
NOT Clave
Documento_ID Numeric 30
NULL principal
NOT
Nombre_ID Varchar 50
NULL
NOT
Cliente Apellidos_ID Varchar
NULL
50
NOT
Telefono_ID Numeric 10
NULL
NOT
Direccion_ID Varchar 80
NULL
NOT Clave
Matricula_ID Varchar 10
NULL principal
NOT
Vehículo Color_ID Varchar
NULL
30
NOT
Modelo_ID Date 20
NULL
Empleado Documento_EMP Numeric NOT 30 Clave
NULL principal
31
Base de datos para la administración de un taller mecánico.
NOT
Disponible_EMP Varchar 50
NULL
NOT
No_disponible_EMP Varchar 50
NULL
NOT Clave
Referencia_REP Numeric 20
NULL Principal
NOT
Descripción Varchar 100
NULL
NOT
Repuesto Marca Varchar
NULL
100
NOT
Precio Varchar 50
NULL
NOT
Total_REP Varchar 50
NULL
NOT Clave
Servicio_ID Interchar 30 Entidad Servicio
NULL Foránea
NOT Clave
Servicios Repuesto_ID Varchar 50 Entidad Repuesto
NULL Foránea
– NOT
Repuestos Cantidad Interchar 30
NULL
NOT
Precio_unitario Interchar 10
NULL
Factura NOT Clave
Numero_FAC Numeric 30
NULL Principal
NOT Clave
Numero_SEV Varchar 100 Entidad Servicio
NULL Foránea
NOT Clave
Documento_ID Varchar 30 Entidad Cliente
NULL Foránea
NOT Clave
Matricula_ID Numeric 10 Entidad Vehículo
NULL Foránea
NOT Clave
Horas_FACT Numeric 20 Entidad Servicio
NULL Foránea
NOT Clave
Referencia_REP Numeric 20 Entidad Repuesto
NULL Foránea
NOT
Utilidad_EST Varchar 50
NULL
NOT
IVA_19 Varchar 20
NULL
La tabla 5 muestra El diccionario de datos
32
Base de datos para la administración de un taller mecánico.
En el caso que nos atañe se puede definir un campo o una tabla que
contenga información relacionada los clientes a los que se les vende
algún determinado repuesto o las horas que pueden ser facturados
durante un mantenimiento o reparación.
33
Base de datos para la administración de un taller mecánico.
35
Base de datos para la administración de un taller mecánico.
Como opción vemos a MySQL como un SGBD que puede servir como
una buena solución general, ya que es capaz de manejar grandes
cantidades de tráfico y puede escalar lecturas en forma de "read-
slaves"( Consiste en replicar las consultas de actualización en una base
de datos maestra sobre una o varias bases de datos esclavas (slave), de
manera que tengamos una copia de las mismas a lo largo del tiempo).
36
Base de datos para la administración de un taller mecánico.
en día las empresas que manejan cargas de trabajo mixtas tienen otros
criterios a considerar.
Es así que los registros se almacenan de forma tal que sea posible
recuperarlos (leerlos) de forma eficiente siempre que se necesiten.
Debemos de recordar que un disco magnético está dividido en pistas, y
éstas en sectores. La división de una pista en bloques de igual tamaño
(páginas) la realiza el Sistema Operativo cuando da formato al disco.
37
Base de datos para la administración de un taller mecánico.
Los archivos pueden ser usados para guardar datos durante un periodo
indefinido de tiempo o pueden ser usados para guardar datos
temporalmente para un propósito específico.
39
Base de datos para la administración de un taller mecánico.
40
Base de datos para la administración de un taller mecánico.
6. SQL
MySQL
CREATE TABLE nombre_tabla 1
41
Base de datos para la administración de un taller mecánico.
42
Base de datos para la administración de un taller mecánico.
44
Base de datos para la administración de un taller mecánico.
DELIMITER //
CREATE FUNCTION total_creditos_profesores()
RETURNS int
BEGIN
DECLARE total_creditos int;
SELECT SUM(creditos) INTO total_creditos
FROM gi_profesores, gi_categorias
WHERE categoria=codigo;
RETURN total_creditos;
END
//
45
Base de datos para la administración de un taller mecánico.
CREATE
[DEFINER = { user | CURRENT_USER }]
PROCEDURE sp_name ([proc_parameter[,...]])
[characteristic ...] routine_body
proc_parameter:
[ IN | OUT | INOUT ] param_name type
func_parameter:
param_name type
type:
Any valid MySQL data type
characteristic:
COMMENT 'string'
| LANGUAGE SQL
| [NOT] DETERMINISTIC
| { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
| SQL SECURITY { DEFINER | INVOKER }
routine_body:
Valid SQL routine statement
CREATE
[DEFINER = { user | CURRENT_USER }]
FUNCTION sp_name ([func_parameter[,...]])
RETURNS type
[characteristic ...] routine_body
proc_parameter:
[ IN | OUT | INOUT ] param_name type
func_parameter:
param_name type
type:
Any valid MySQL data type
characteristic:
COMMENT 'string'
46
Base de datos para la administración de un taller mecánico.
| LANGUAGE SQL
| [NOT] DETERMINISTIC
| { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
| SQL SECURITY { DEFINER | INVOKER }
routine_body:
Valid SQL routine statement
7. Informe de pruebas
9. Análisis de datos
47
Base de datos para la administración de un taller mecánico.
10.1. Hardware
10.1.2. Almacenamiento
10.2. Conectividad
10.3. Seguridad
48
Base de datos para la administración de un taller mecánico.
11. Conclusiones
49
Base de datos para la administración de un taller mecánico.
De igual manera resaltar que se contó con datos muy limitados que nos
brindó un reto poder llenar los vacíos pero que nos sirve como un
aliciente para seguir avanzando en el aprendizaje de un sistema de
información.
BIBLIOGRAFÍA BÁSICA
50
Base de datos para la administración de un taller mecánico.
51