0% encontró este documento útil (0 votos)
409 vistas25 páginas

Proyecto Cabify

Este documento presenta un resumen de un proyecto de base de datos para una empresa de transporte llamada Cabify. Incluye información sobre los estudiantes, docente y curso de base de datos. También describe el proceso de transporte de Cabify, los objetivos del proyecto de base de datos como brindar información exacta sobre trayectos y optimizar reportes, y el alcance de implementar una base de datos para controlar solicitudes de servicio y diseñar una interfaz de usuario.

Cargado por

Abi Angye
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 DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
409 vistas25 páginas

Proyecto Cabify

Este documento presenta un resumen de un proyecto de base de datos para una empresa de transporte llamada Cabify. Incluye información sobre los estudiantes, docente y curso de base de datos. También describe el proceso de transporte de Cabify, los objetivos del proyecto de base de datos como brindar información exacta sobre trayectos y optimizar reportes, y el alcance de implementar una base de datos para controlar solicitudes de servicio y diseñar una interfaz de usuario.

Cargado por

Abi Angye
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 DOCX, PDF, TXT o lee en línea desde Scribd

UNIVERSIDAD PRIVADA

ANTENOR ORREGO

FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE
INGENIERÍA DE COMPUTACION Y SISTEMAS

CURSO : Base de Datos

DOCENTE : Piminchumo Flores, Jorge

ALUMNOS : Chinchayán Melendez, Pedro


Diaz Mantilla, Wistermundo No trabajó
Flores Flores, Juan Daniel
Loloy Choque, Franco
Otiniano Julca, Edward No trabajó

TRUJILLO – PERÚ
2016
ÍNDICE

CARATULA………………………………………………………………………………………………….01
INDICE.............................................................................................................02
1. Estudio inicial
[Link]ón de la empresa
1.1.1. Descripción de la empresa
1.1.2. Organigrama
1.1.3. Operaciones y/o objetivos de la empresa
[Link]ón del proceso a modelar
1.2.1. Descripción del proceso
1.2.2. Gráfico del proceso
1.2.3. Definir problemas
1.2.4. Alcance del proceso
[Link] del Proyecto del sistema de la Base de Datos
1.3.1. Definir objetivos
1.3.2. Definir alcance
1.3.3. Limitaciones
1.3.4. Cronograma del proyecto
2. Diseño de la Base de Datos
[Link]ño Conceptual
2.1.1. Identificar usuarios
2.1.2. Identificar fuentes de información
2.1.3. Requerimiento de información del usuario
2.1.4. Restricciones de información del proceso
2.1.5. Modelo E-R
2.1.6. Diccionario de Datos
[Link]ón de la DBMS
[Link]ño Lógico
2.3.1. Mapeo del modelo E-R al modelo Relacional
[Link]. Tablas
[Link]. Campos de tablas
[Link]. Restricciones: identidad, integridad y reglas de
negocio
2.3.2. Normalización
[Link]. Diagrama de dependencias funcionales
[Link]. Proceso de normalización: 1FN, 2FN, 3FN, BCFN, 4FN
[Link]ño Físico
2.4.1. Define las organización del almacenamiento de los datos:
tablas, índices
2.4.2. Asigna medidas de seguridad
3. Implementación y carga
[Link] SQL de creación de la BD
[Link] SQL de creación de objetos de la BD
3.2.1. Tablas
3.2.2. Vistas
3.2.3. Funciones
3.2.4. Procedimientos almacenados
3.2.5. Triggers
3.2.6. Paquetes
3.2.7. Indices
[Link] SQL de carga de datos
4. Referencias Bibliográficas

1. ESTUDIO INICIAL

1.1. SITUACIÓN DE LA EMPRESA

1.1.1. Descripción de la empresa


- Fundada en 2011 por el joven emprendedor español Juan de
Antonio.
- Inicialmente creada con fondos de Silicon Valley, a la fecha
ha reunido más de $140 millones de dólares en diversas
rondas de inversión que apostaron por su desarrollo.
- Cuenta con presencia en 10 países y más de 25 ciudades en
España, Portugal y Latinoamérica. Tiene previsto seguir
expandiendo operaciones en el 2016.
- Cuenta con una plantilla de más de 500 profesionales en 25
oficinas en sus 10 mercados y es una fuente muy atractiva de
ingresos para un gran número de conductores.

1.1.2. Organigrama
1.1.3. Operaciones y/o objetivos de la empresa

Operaciones:

- El principal proceso productivo de la empresa está dedicado


al transporte de personal y mensajería vía terrestre, el cual
mediante una aplicación asigna de forma automática la
unidad más cercana al cliente.

- Fidelizar a los clientes con la adquisición del servicio que se


brinda

- Captar nuevos choferes, para poder ampliar las fronteras de


la empresa
.

Objetivos:

 Proporcionar a sus clientes la conexión con conductores de


vehículos registrados en su red para servicios de transporte
 Cabify busca hacer más inteligentes y seguras las ciudades,
brindándoles una solución de movilidad urbana eficiente.

Mision y Visión:

 Ofrece su servicio mediante diferentes vehículos con chofer y


diversas categorías, pensadas para toda ocasión.

 Si bien satisface al segmento particular, enfoca sus operaciones


en el sector corporativo con su versión Cabify Corporate.

 Ha crecido sostenidamente, multiplicando su demanda por diez


durante el año 2015 y experimentando un crecimiento similar en el
año 2016.

1.2. SITUACIÓN DEL PROCESO A MODELAR

1.2.1. Descripción del Proceso


 El cliente selecciona el lugar donde desea iniciar el trayecto, el cual
debe de estar dentro de los límites del área de acción de la
empresa
 El cliente selecciona el lugar de destino. Al contrario del punto de
origen, éste puede no estar dentro del área antes mencionada.

 El cliente selecciona la categoría de su preferencia. Actualmente se


cuentan con dos categorías, lite y executive, la primera es más
económica que la segunda, con vehículos de menor tamaño.

 Se despliega una pantalla donde se muestra el precio estimado en


base a un kilometraje (con apoyo de google maps) y el tiempo
estimado que tome realizar el trayecto.

 Al momento de confirmar el servicio, se genera una alerta para ser


recogido por el conductor más cercano.

1.2.2. Gráfico del Proceso

 Registrar Clientes: Maclabi S.A.C. solicita al cliente una copia de


su DNI, así como también un número de celular del operador
Movistar. Esta información es vital para la creación de un código de
cliente, con el cual se podrá facturar la compra de recargas que este
realiza.

 Crear Ruta - Código por Ejecutivo de Ventas: Para poder


contactar con los clientes a cada ejecutivo de venta se le asigna un
código de vendedor, de igual manera una ruta por distrito para llegar
a abastecer a todos los clientes de esa zona.
 Facturar: Proceso en el cual se emite una factura y/o boleta
diariamente a cada cliente con el detalle de su compra de recarga
virtual, este proceso es el mismo para la venta de chips prepago.

 Registrar Clientes: Proceso por el cual un


cliente se registrará ingresando sus datos
personales, estos serán “Nombre, Apellido,
Dirección de email, Contraseña, teléfono
móvil”.

 Registrar Conductores: Proceso por el cual un conductor se


registrará
ingresando sus
datos personales,
para así de esta
manera poder
escoger el tipo de
colaboración, estos
datos serán
“Nombre, Apellido,
Dirección de email,
Contraseña, País,
teléfono móvil,
Ciudad, Forma de
colaboración”.
1.2.3. Definir Problemas
 No tiene una muy buena información sobre sus choferes, estos a
veces desertan.

 La asignación de trayectos no es equitativa

 Los ingresos económicos de los choferes no cumplen con las


expectativas

 Las tarifas en ciertas partes de las ciudades no están definidas,


por lo que al generar el costo del servicio tiene algunos errores o
a veces no sale.

1.2.4. Alcance del Proceso


 Brindar un servicio totalmente seguro, es decir que se le cobre al
cliente lo que debería pagar exactamente..

1.3. Especificaciones del Proyecto del Sistema de la Base de Datos

1.3.1. Definir Objetivos


Objetivo General:
- Desarrollo e Implementación de una Base de Datos para el
La Gestión de atención de solicitudes de transporte y gestión de
información de los conductores.

Objetivos Específicos:
- Brindar una exacta información de los trayectos, (costos y
tiempo de viaje)
- Optimizar el proceso de Reportes de servicios para un mayor
control diario, semanal y/o mensual.
- Proporcionar información sobre nuestros conductores para
tener mayor acercamiento hacia ellos.

1.3.2. Definir Alcance


- Se implementará una base de datos para el control solicitudes de
servicio en Cabify.
- Se diseñará una interfaz que permita el manejo y control de la
base de datos.
- La base de datos podrá brindar un soporte a Cabify. las 24 horas
del día.
- La base de datos servirá para poder almacenar los datos de
clientes y conductores.

1.3.3. Limitaciones
- No se tiene mucha información sobre los clientes.
- No se puede analizar las medidas internas que se toman al
presentarse una desperfecto en los vehículos, como costos
de reparaciones.
- Cabify al ser una empresa virtual, la información de sus
procesos es demasiada reservada
-
1.3.4. Cronograma del Proyecto
2. DISEÑO DE LA BASE DE DATOS

2.1. DISEÑO CONCEPTUAL

2.1.1. Identificar usuarios

Los usuarios serian cualquier persona, cualquier persona puede


reservar un servicio en cabify.

2.1.2. Identificar fuentes de información


Las fuentes de información serán las mismas personas que tiene la
aplicación instalada y hacen uso de ella.

2.1.3. Requerimiento de información del usuario


Los requerimientos que necesitamos de los usuarios son:
Nombre, Ubicación, Preferencias, Trayecto

2.1.4. Restricciones de información del proceso

Restricciones físicas: No tenemos contacto con los usuarios antes


de que soliciten un servicio.
Restricciones de mercado: Competencia que ofrencen el mismo
servicio como easytaxi y uber.

2.1.5. Modelo E-R


2.1.6. Diccionario de Datos
Persona
Atributo Code Tipo Tamaño
ID_Persona ID_PERSONA number 10
Nombre_persona NOMBRE_PERSONA varchar2 20
Apellido_persona APELLIDO_PERSONA varchar2 20
DNI_persona DNI_PERSONA number 8

Direccion_persona DIRECCION_PERSONA varchar2 100

Cliente
Atributo Code Tipo Tamaño
email_Cliente EMAIL_CLIENTE varchar2 50
Contraseña_Cliente CONTRASEÑA_CLIENTE varchar2 16
Pais_Cliente PAIS_CLIENTE varchar2 10

Empleado
Tamañ
Atributo Code Tipo o
ID_Empleado ID_SUPERVISOR number 3
Empleado_Sueldo EMPLEADO_SUELDO doub le 10
Fecha_Nacimiento FECHA_NACIMIENTO date

Chofer
Tamañ
Atributo Code Tipo o
varchar
Tipo_Chofer TIPO_CHOFER 2 5

Mantenimiento
Tamañ
Atributo Code Tipo o
ID_Mantenimiento ID_MANTENIMIENTO number 9
varchar
Detalle_Mantenimiento DETALLE_MANTENIMIENTO 2 255

Mantenimiento_Vehiculo
Tamañ
Atributo Code Tipo o
ID_mantenimiento ID_MANTENIMIENTO number
ID_empleado ID_EMPLEADO number
ID_Vehiculo ID_VEHICULO number

Flota
Tamañ
Atributo Code Tipo o
ID_flota ID_FLOTA number 3
ID_Vehiculo ID_VEHICULO number
ID_Empleado ID_EMPLEADO number
NroVehiculos NRO_VEHICULOS number

Vehiculo
Tamañ
Atributo Code Tipo o
ID_Vehiculo ID_VEHICULO number 3
varchar
Placa_Vehiculo PLACA_VEHICULO 2 10

Reserva
Tamañ
Atributo Code Tipo o
ID_Reserva ID_RESERVA number 9
hora_reserva HORA_RESERVA date
varchar
Ubicación_reserva UBICACIÓN_RESERVA 2

Promocion
Tamañ
Atributo Code Tipo o
ID_promocion ID_PROMOCION number 9
Fecha_InicioPromocion FECHA_INICIOPROMOCION date
Fecha_FinPromocion FECHA_FINPROMOCION date
Descuento_Promocion DESCUENTO_PROMOCION number 10,4

Contrato
Tamañ
Atributo Code Tipo o
ID_contrato ID_CONTRATO number 9
ID_Empleado ID_Empleado number
FechaInicioContrato FECHAINICIOCONTRATO date
FechafinContrato FECHAFINCONTRATO date

Boleta
Tamañ
Atributo Code Tipo o
ID_Boleta ID_BOLETA number 9
FechaEmision FECHAEMISION date
Monto MONTO number
varchar
Descripcion DESCRIPCION 2
Factura
Tamañ
Atributo Code Tipo o
ID_Factura ID_FACTURA number 9
FechaEmision FECHAEMISION date
RUC RUC number 12
Monto MONTO number
varchar
Descripcion DESCRIPCION 2
Trayectoria
Tamañ
Atributo Code Tipo o
Trayecto_ID TRAYECTO_ID number 9
Hora_Inicio HORAINICIO date
Hora_fin HORAFIN date

2.2. Selección de la DBMS

Nosotros hemos seleccionado la DBMS de Oracle usando la


herramienta de Run SQL command Line for Oracle 11

2.2.1. Tablas:

- Persona
- Cliente
- Pago
- Empleado
- Mantenimiento
- Mantenimiento_Vehículo
- Flota
- Vehículo
- Reserva
- Promoción
- Contrato
- Boleta
- Factura
- Trayectoria

2.2.2. Campo de Tablas

 Persona: ID_Persona, Nombre_persona, Apellido_persona,


DNI_persona, Dirección_persona

 Client: email_Cliente, Contraseña_Cliente, País_Cliente

 Pago: ID_Pago, Monto_Pago, Detalle_Pago

 Empleado: ID_Supervisor, Empleado_Sueldo,


Fecha_Nacimiento

 Chofer: Tipo_Chofer, Infracciones

 Mantenimiento: ID_Mantenimiento, Detalle_Mantenimiento

 Flota: ID_flota, ID_Vehículo, ID_Empleado

 Vehículo: ID_Vehículo, Placa_Vehículo

 Reserva: ID_Reserva, hora_reserva, Ubicación_reserva

 Promoción: ID_promoción, Fecha_InicioPromoción,


Fecha_FinPromoción, Descuento_Promoción
 Contrato: ID_contrato, ID_Empleado, FechaInicioContrato,
FechafinContrato

 Boleta: ID_Boleta, FechaEmisión

 Factura: ID_Factura, FechaEmisión, RUC


 Trayectoria: Trayecto_ID, Hora_Inicio, Hora_fin

2.2.3. Restricciones: En el manejo del proceso de la gestión de la


información, en nuestros vehículos tendremos una restricción de
kilometraje, el cual será que no pase los 5000 kilómetros
mensuales, será asignados por cada carro, esto nos permitirá saber
que carros se usan más, y cuales menos, para poder darles usa a
todos los carros y que tengan un uso en paralelo; También hay una
restricción más, la cual no se permitirá el ingreso a carros si este es
un modelo anterior al año 2013; Considerando que un conductor
llegue a cometer alguna infracción, a la primera se le avisará y se le
advertirá que no debe cometer ninguna otra infracción, si esque
este llegara a cometer una segunda infracción se le retirará del
sistema

[Link]ón

0FN 1FN 2FN 3FN

ID_Persona ID_Persona ID_Persona ID_Persona


Nombre Nombre Nombre DNI_persona
Apellido Apellido Apellido Nombre_perso
DNI DNI DNI Apellido_perso
Direccion1 Direccion Direccion Direccion_pers
Direccion2 email
email1 Contraseña ID_Persona ID_Persona
email2 Pais email email_Cliente
Contraseña Contraseña Contraseña_Cl
Pais ID_Trayecto Pais Pais_Cliente
Sueldo Hora_Inicio
Fecha_Nacimiento Hora_fin ID_Trayecto Trayecto_ID
Tipo_Chofer Hora_Inicio Hora_Inicio
Mantenimiento ID_Chofer Hora_fin Hora_fin
Detalle Sueldo
NroVehiculo Fecha_Nacimiento ID_Chofer ID_Empleado
Placa Tipo Sueldo Empleado_Sue
hora Fecha_Nacimiento Fecha_Nacimie
Ubicación ID_Mantenimiento Tipo
Fecha_Inicio Detalle ID_Empleado
Fecha_Fin ID_Mantenimiento Tipo_Chofer
Descuento ID_flota Detalle
FechaInicioContrato ID_Vehiculo ID_Mantenimi
FechafinContrato ID_Empleado ID_flota Detalle_Mante
FechaEmision NroVehiculos ID_Vehiculo
Monto ID_Empleado ID_flota
Descripcion ID_Vehiculo NroVehiculos ID_Vehiculo
FechaEmision Placa ID_Empleado
RUC ID_Vehiculo NroVehiculos
Monto ID_Reserva Placa
Descripcion hora ID_Vehiculo
Hora_Inicio Ubicación ID_Reserva Placa_Vehiculo
Hora_fin hora
ID_Empleado ID_promocion Ubicación ID_Reserva
ID_Mantenimiento Fecha_Inicio hora_reserva
ID_flota Fecha_Fin ID_promocion Ubicación_res
ID_Vehiculo Descuento Fecha_Inicio
ID_Reserva Fecha_Fin ID_promocion
ID_promocion ID_contrato Descuento Fecha_InicioPr
ID_contrato ID_Empleado Fecha_FinProm
ID_Boleta FechaInicioContrato ID_contrato Descuento_Pro
ID_Factura FechafinContrato ID_Empleado
ID_Trayecto FechaInicioContrato ID_contrato
ID_Boleta FechafinContrato ID_Empleado
FechaEmision FechaInicioCon
Monto ID_Boleta FechafinContra
Descripcion FechaEmision
Monto ID_Boleta
ID_Factura Descripcion FechaEmision
FechaEmision Monto
RUC ID_Factura Descripcion
Monto FechaEmision
Descripcion RUC ID_Factura
Monto FechaEmision
Descripcion RUC
Monto
Descripcion
4FN

ID_Persona
DNI_persona
Nombre_persona
Apellido_persona
Direccion_persona

ID_Persona
email_Cliente
Contraseña_Cliente
Pais_Cliente

Trayecto_ID
Hora_Inicio
Hora_fin

ID_Empleado
Empleado_Sueldo
Fecha_Nacimiento

ID_Empleado
Tipo_Chofer

ID_Mantenimiento
Detalle_Mantenimiento

ID_flota
ID_Vehiculo
ID_Empleado
NroVehiculos

ID_Vehiculo
Placa_Vehiculo

ID_Reserva
hora_reserva
Ubicación_reserva
ID_promocion
FechaInicio_Promocion
FechaFin_Promocion
Descuento_Promocion

ID_contrato
ID_Empleado
FechaInicio_Contrato
Fechafin_Contrato

ID_Boleta
FechaEmision_Boleta
Monto_Boleta
Descripcion_Boleta

ID_Factura
FechaEmision_Factura
RUC_Factura
Monto_Factura
Descripcion_Factura

2.3. Diseño Físico


[Link] medidas de seguridad

Límites de utilización de los recursos del sistema para los usuarios.

3. Implementación y carga
3.1. Sentencias SQL de creación de la BD

CREATE DATABASE Cabify;

CREATE = CREAR
DATABASE= BASE DE DATOS

3.2. Sentencias SQL de creación de objetos de la BD


[Link]

create table PERSONA


(
ID_PERSONA NUMBER(8) not null,
NOMBRE_PERSONA VARCHAR2(12) not null,
APELLIDO_PERSONA VARCHAR2(12) not null,
DNI_PERSONA NUMBER(8) not null,
CELULAR_PERSONA NUMBER(10) not null,
DIRECCION_PERSONA VARCHAR2(30) not null,
constraint PK_PERSONA primary key (ID_PERSONA)
);

create table MANTENIMIENTO_VEHICULO


(
ID_MANTENIMIENTO NUMBER(8) not null,
ID_PERSONA NUMBER(8),
ID_VEHICULO NUMBER(8),
FECHAENTRADA_MANTENIMIENTOVEHI DATE,
FEACHASALIDA_MANTENIMIENTOVEHI DATE,
DETALLES_MANTENIMIENTO VARCHAR2(255),
constraint PK_MANTENIMIENTO_VEHICULO primary key
(ID_MANTENIMIENTO)
);

create table EMPLEADO


(
NOMBRE_PERSONA VARCHAR2(12),
APELLIDO_PERSONA VARCHAR2(12),
DNI_PERSONA NUMBER(8),
CELULAR_PERSONA NUMBER(10),
DIRECCION_PERSONA VARCHAR2(30),
ID_PERSONA NUMBER(8) not null,
EMP_ID_PERSONA NUMBER(8),
SUELDO_EMPLEADO NUMBER,
FECNAC_EMPLEADO DATE,
constraint PK_EMPLEADO primary key (ID_PERSONA)
);
create table SERVICIO
(
ID_SERVICIO NUMBER(8) not null,
ID_PERSONA NUMBER(8),
ID_VEHICULO NUMBER(8),
ID_RESERVA NUMBER(8) not null,
ID_PROMOCION VARCHAR2(8) not null,
NRO_BOLETA NUMBER(8) not null,
NRO_FACTURA NUMBER(16) not null,
ID_FLETE NUMBER,
ID_TRANSPORTE VARCHAR2(8) not null,
HORA_INICIO DATE,
HORA_FIN DATE,
IMPORTE_SERVICIO NUMBER,
constraint PK_SERVICIO primary key (ID_SERVICIO)
);

create table CLIENTE


(
NOMBRE_PERSONA VARCHAR2(12),
APELLIDO_PERSONA VARCHAR2(12),
DNI_PERSONA NUMBER(8),
CELULAR_PERSONA NUMBER(10),
DIRECCION_PERSONA VARCHAR2(30),
ID_PERSONA NUMBER(8) not null,
LOGIN_CLIENTE VARCHAR2(22),
CONTRASENA_CLIENTE CLOB,
EMAIL_CLIENTE VARCHAR2(30),
PAIS_CLIENTE VARCHAR2(12),
MIS_LOCACIONES VARCHAR2(22),
constraint PK_CLIENTE primary key (ID_PERSONA)
);

create table PREFERENCIA


(
ID_PREFERENCIA VARCHAR2(8) not null,
ID_PERSONA NUMBER(8),
LLAMADACONDUCTOR_PREFERENCIA SMALLINT,
APERTURAPUERTA_PREFERENCIA SMALLINT,
AIREACONDICIONADO_PREFERENCIA SMALLINT,
MUSICA SMALLINT,
constraint PK_PREFERENCIA primary key
(ID_PREFERENCIA)
);

create table VEHICULO


(
ID_VEHICULO NUMBER(8) not null,
MODELO_VEHICULO VARCHAR2(22),
PLACA_VEHICULO VARCHAR2(8),
SOAT_VEHICULO SMALLINT,
ANO_VEHICULO DATE,
KM_VEHICULO INTEGER,
constraint PK_VEHICULO primary key (ID_VEHICULO)
);

create table FLOTA


(
ID_VEHICULO NUMBER(8),
ID_FLOTA NUMBER(5) not null,
constraint PK_FLOTA primary key (ID_FLOTA)
);

create table FLOTA_SUPERVISOR


(
ID_FLOTA NUMBER(5) not null,
ID_PERSONA NUMBER(8) not null,
constraint PK_FLOTA_SUPERVISOR primary key
(ID_FLOTA, ID_PERSONA)
);

create table TRANSPORTE


(
PRECIOKM_TRANSPORTE NUMBER,
TIEMPOADICIONAL_TRANSPORTE DATE,
ID_TRANSPORTE VARCHAR2(8) not null,
ID_SERVICIO NUMBER(8) not null,
constraint PK_TRANSPORTE primary key
(ID_TRANSPORTE)
);

create table PROMOCION


(
FECHA_INICIOPROMOCION DATE,
FECHA_FINPROMOCION DATE,
DESCUENTO SMALLINT,
ID_PROMOCION VARCHAR2(8) not null,
ID_SERVICIO NUMBER(8) not null,
constraint PK_PROMOCION primary key (ID_PROMOCION)
);

create table EMPLEADO_CONTRATO


(
ID_PERSONA NUMBER(8) not null,
ID_CONTRATO NUMBER not null,
constraint PK_EMPLEADO_CONTRATO primary key
(ID_PERSONA, ID_CONTRATO)
);

create table SERVICIO


(
ID_SERVICIO NUMBER(8) not null,
ID_PERSONA NUMBER(8),
ID_VEHICULO NUMBER(8),
ID_RESERVA NUMBER(8) not null,
ID_PROMOCION VARCHAR2(8) not null,
NRO_BOLETA NUMBER(8) not null,
NRO_FACTURA NUMBER(16) not null,
ID_FLETE NUMBER,
ID_TRANSPORTE VARCHAR2(8) not null,
HORA_INICIO DATE,
HORA_FIN DATE,
IMPORTE_SERVICIO NUMBER,
constraint PK_SERVICIO primary key (ID_SERVICIO)
);

create table FACTURA


(
NRO_FACTURA NUMBER(16) not null,
ID_SERVICIO NUMBER(8) not null,
RUC_FACTURA NUMBER(16),
FECHAEMISION_FACTURA DATE,
MONTO_FACTURA INTEGER,
constraint PK_FACTURA primary key (NRO_FACTURA)
);

create table FLETE


(
PESO NUMBER,
ID_FLETE NUMBER not null,
constraint PK_FLETE primary key (ID_FLETE)
);

create table BOLETA


(
FECHAEMISION_BOLETA DATE,
MONTO_BOLETA INTEGER,
NRO_BOLETA NUMBER(8) not null,
ID_SERVICIO NUMBER(8) not null,
constraint PK_BOLETA primary key (NRO_BOLETA)
);

create table RESERVA


(
ID_RESERVA NUMBER(8) not null,
ID_PERSONA NUMBER(8),
ID_SERVICIO NUMBER(8) not null,
FECHA_RESERVA DATE,
MODELO_AUTO VARCHAR2(22),
constraint PK_RESERVA primary key (ID_RESERVA)
);

También podría gustarte