You are on page 1of 15

BASE DE DATOS BASICO

MODELO RELACIONAL

ACTIVIDAD COLABORATIVA 2

GIOVANI DAVID HERNANDEZ RIOS


CDIGO: 92535437

GRUPO: 301330_12

TUTOR DEL CURSO


ING: IBO LUIAS CERRA

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BSICAS, TECNOLOGA E INGENIERA ECBTI
PROGRAMA DE INGENIERA DE SISTEMAS
NOVIEMBRE - 2016

MODELO RELACIONAL

La empresa de transporte LENTEJA S.A. que opera a nivel nacional, tiene el servicio de
transporte de pasajeros intermunicipal. En este tiene agencias en los municipios donde
ofrecen el servicio de transporte. Actualmente el sistema lo lleva en forma manual y lo han
contratado a usted para que le organice todo el sistema de control de transporte. Para ello
cuenta con la siguiente informacin:
Las agencias estn codificadas (cdigo agencia, nombre de la agencia, direccin y
municipios), pueden existir varias por municipio, stos ltimos tambin estn codificados.
Cuando un pasajero entra a la taquilla de la agencia para viajar, se le solicita el nmero de
documento de identidad, los nombres completos y los apellidos, as mismo el ao en que
naci, telfono de algn contacto. El empleado que lo atiende, procede a darle un recibo, el
cual contiene los datos anteriores ms, nmero de bus, nmero de asiento, hora de salida,
municipio destino y valor., este recibo tiene un nmero nico.
Una vez que el empleado tiene el nmero completo de pasajeros o ha llegado la hora de
salida, genera una planilla la cual contiene los siguientes datos:
De todos los empleados se requiere tener adems del nmero de identificacin, los nombres
y los apellidos, la direccin de residencia, telfono, municipio donde reside y nmero de
celular.
La agencia tiene una tabla de porcentajes de comisin de viaje para los conductores, dada
por cada agencia y la agencia destino. Finalizado el mes, se les liquida los viajes efectuados
segn la tabla de porcentaje anterior y el valor total de la planilla, como los porcentajes
pueden variar, en la liquidacin debe aparecer adems de la planilla y el valor liquidado, el
porcentaje con que se liquid.
Adems se tiene:
Un recibo solo pertenece a un pasajero y un pasajero puede tener varios recibos.
Un conductor puede tener varias planillas y una planilla solo pertenece a un conductor.
Una liquidacin solo pertenece a una planilla y una planilla solo tiene una liquidacin.
Un pasajero puede estar en varias planillas

TABLAS

AGENCIAS
MUNICIPIO
PASAJEROS
RECIBO
EMPLEADO/CONDUCTORES
LIQUIDACION
BUSES
RUTAS
VIEJE
PUESTO

CAMPOS Y TIPOS DE CAMPOS


Agencias:
Cod_agecia
Nombre_agencia
Direccion_Agencia
Cod_municipio

(identificador entero, nico a cada fila), (Llave Primaria)


(Texto), (Not Null)
(Texto), (Not Null)
(Entero), (Llave Fornea)

Municipios:
Cod_municipio
(identificador entero, nico a cada fila), (Llave Primaria)
Nombre_municipio (Texto), (Not Null)
Direccion_municipio (Texto), (Not Null)
Pasajeros:
Cod_pasajero
(identificador entero, nico a cada fila), (Llave Primaria)
Tipoid_pasajero
(identificador entero), (Not Null)
Nombres_pasajero (Texto), (Not Null)
Apellidos_pasajero (Texto), (Not Null)
Ano_nacimiento
(Date), (Not Null)
Telfono_pasajero (Entero), (Not Null)

Recibo:
Cod_recibo (identificador entero, nico a cada fila), (Llave Primaria)
Fecha_hora
(Date), (Not Null)
Cod_empleado (Entero), (Llave Fornea)
Cod_agencia (Entero), (Llave Fornea)
Cod_viaje
(Entero), (Llave Fornea)
Cod_bus
(Entero), (Llave Fornea)
Cod_municipio (Entero), (Llave Fornea)
Cod_puesto
(Entero), (Llave Fornea)
Cod_idtuta
(Entero), (Llave Fornea)
Cod_pasajero (Entero), (Llave Fornea)

Empleado:
Cod_empleado
Nombres_empleado
Apellidos_empleado
Direccin_empleado
Telfono_empleado
Municipio_empleado
Cargo_empleado
Numero_celular
Cod_agencia

(identificador entero, nico a cada fila), (Llave Primaria)


(Texto), (Not Null)
(Texto), (Not Null)
(Texto), (Not Null)
(Entero), (Not Null)
(Texto), (Not Null)
(Texto), (Not Null)
(Entero), (Not Null)
(Entero), (Llave Fornea)

Liquidacin:
Cod_liquidacion
Valor_liquidacion
Porcentaje_liquidacion
Cod_viaje

(identificador entero, nico a cada fila), (Llave Primaria)


(Entero), (Not Null)
(Entero), (Not Null)
(Entero), (Llave Fornea)

Buses:
Cod_bus
Numero_silla
Placa_bus
Cod_agencia
Cod_minicipio
Id_puesto

(identificador entero, nico a cada fila), (Llave Primaria)


(Entero), (Not Null)
(Texto), (Not Null)
(Entero), (Llave Fornea)
(Entero), (Llave Fornea)
(Entero), (Llave Fornea)

Rutas:
Cod_ruta
Municipio_partida
Municipio_llegada

(identificador entero, nico a cada fila), (Llave Primaria)


(Texto), (Not Null)
(Texto), (Not Null)

Viajes:
Cod_viaje
Municipio_origen
Municipio_destino
Fecha_viaje
Hora_viaje
Valor_viaje
Cod_bus
Cod_agencia
Cod_municipio
Id_puesto
Id_ruta

(identificador entero, nico a cada fila), (Llave Primaria)


(Texto), (Not Null)
(Texto), (Not Null)
(Date), (Not Null)
(Time), (Not Null)
(Entero), (Not Null)
(Entero), (Llave Fornea)
(Entero), (Llave Fornea)
(Entero), (Llave Fornea)
(Entero), (Llave Fornea)
(Entero), (Llave Fornea)

Puesto:
Cod_puesto
Nombre_puesto

(identificador entero, nico a cada fila), (Llave Primaria)


(Texto), (Not Null)

TRUPLA

AGENCIAS

Cod_agecia
1001
1002
1003
1004

Nombre_agencia

Direccion_Agencia

Viajemos
Viajes Colombia
Viajes la cabra
Flash Viajes

cra 7 # 32-52 Sur


Calle 8 # 52-6
cra 9 # 56-52
calle 9 # 78-56

MUNICIPIOS

Cod_Municipio Nombre_municipio
5001
5059
5306
8001

Medellin
Armenia
Girardot
Barranquilla

Direccion_municipio
Autopista 50 # 40-53
Calle 90 # 53-85
Cra 9 # 85-96
Cra 7 # 85-85

Cod_municipio
5001
5059
8001
5059

PASAJEROS
Cod_pasajero Tipo_identificacion Nombres_pasajero Apellidos_pasajero Ano_nacimiento Telefono_pasajero
64589588 CC
Ana Lucia
Giraldo
1979
7568998
8578594 CC
Juan
Ardila
1980
6075580
5898877 CC
Mara
Vaquero
1979
6075588
92535438 CC
Jos
Martnez
1968
8978552

EMPLEADOS
Cod_empleado

Nombres_empleado

Apellidos_empleado

Direccin_empleado

Telfono_empleado

Municipio_empleado

Cargo_empleado Numero_celular Cod_agencia

5898788

Juan

Hernandez

Cra 7 # 85-78 Sur

58955888

5306

Ayudante

3168455526

1001

64589578

Maria

Martinez

calle 35 # 52-85

3589555

8001

Cajera

3128954562

1002

5289458

Juan Manuel

Pinzon

Cra 2 # 45-52

35895455

5059

Conductor

3158964885

1003

4895222

Giovani

Herrera

cale 85 # 58-52

3589255

5059

Conductor

3002005694

1004

PUESTOS

Cod_puesto
1
2
3
4

Nombre_puesto
24 Puestos
36 Puesto
16 Puestos
48 Puestos

BUSES

Cod_bus

Numero_silla

10
15
20
25

Placa_bus
24
36
16
48

Cod_agencia

ACD-252
XDE-485
FRE-425
TER-126

Cod_minicipio
1001
1002
1003
1004

Id_puesto
5001
5002
5003
5004

1
2
3
4

RUTAS

Cod_ruta

Municipio_partida

1
2
3
4

Municipio_llegada
5306
5306
8001
5059

5059
5001
5059
5306

VIAJES

Cod_viaje Municipio_origen Municipio_destino Fecha_viaje Hora_viaje Valor_viaje Cod_bus Cod_agencia Cod_municipio Id_puesto Id_ruta
1
2
3
4

5306
5306
8001
5059

5059
5001
5059
5306

28/10/2016
15/11/2016
15/11/2016
25/11/2016

08:00
07:00
09:00
08:30

168000
189000
185000
175000

10
15
20
20

1001
1002
1002
1003

5306
5306
8001
5059

1
1
2
3

1
2
3
4

LIQUIDACION

Cod_liquidacion Valor_liquidacion
1
2
3
4

500000
18000000
1950000
2890000

Porcentaje_liquidacion
20
35
36
25

Cod_viaje
1
3
2
4

CONSULTAS DE OPERADORES ALGEBRAICOS

Operaciones relacionales:
Los operadores relacionales se utilizan para filtrar, cortar o combinar tablas

Seleccin (Select)
Este operador se aplica a una relacin

RR produciendo una nueva relacin con un

subconjunto de tuplas de RR. Las tuplas de la relacin resultante son las que satisfacen
una condicin

CC sobre algn atributo de RR. Es decir selecciona filas (tuplas) de una


tabla segn un cierto criterio CC. El criterio CC es una expresin condicional, similar a
las declaraciones del tipo if, es booleana esto quiere decir que para cada tupla
de RR toma el valor Verdad (true) o Falso (false).
Los valores de atributos con NULL no cumplirn ninguna condicin.

Cada condicin simple o clusula C tiene el


formato: <Atributo> <Comparador> <Atributo o Constante del Dominio>}. Donde, el
campo Comparador es un operador lgico, que pueden ser {=,,>,<,,}

=: smbolo de igual qu.


: significa no igual a, en algunos libros este smbolo est representado por!=.
: mayor que o igual a.
>: mayor que.
<: menor que.
: menor que o igual a

Notacin en lgebra Relacional


Para representar Select en lgebra relacional se utiliza la letra griega sigma . Por lo
tanto,

si

utilizamos

la

notacin c

condicin CC a cada tupla de

Rc R queremos decir que se aplica la

RR. Si la condicin es Verdad true, dicha tupla

pertenecer al resultado y si es Falsa false, dicha tupla no ser seleccionada. El

esquema de la relacin resultante es el mismo esquema


en el mismo orden que se usan en la tabla

RR, se muestran los atributos

RR.

Ejemplo 1. Tabla Pasajeros

PASAJEROS
Cod_pasajero Tipo_identificacion Nombres_pasajero Apellidos_pasajero Ano_nacimiento Telefono_pasajero
64589588 CC
Ana Lucia
Giraldo
1979
7568998
8578594 CC
Juan
Ardila
1980
6075580
5898877 CC
Mara
Vaquero
1979
6075588
92535438 CC
Jos
Martnez
1968
8978552
Seleccionar las tuplas de la tabla

Pasajeros que el ao de nacimiento sea mayor a 1970

ano_nacimiento>1979pasajeros
Para este caso el pasajero Jos Martnez no sale ya que el ao de nacimiento 1968 es
menor que 1979.

Seleccionar las tuplas de la tabla

Pasajeros que el tipo de identificacin sea igual a

cedula (CC)
tipo_identificacion=CCpasajeros
Para este caso son todos ya que todos tienen el tipo de documento cedula.

Ejemplo 2:

AGENCIAS

Cod_agecia
1001
1002
1003
1004

Nombre_agencia

Direccion_Agencia

Viajemos
Viajes Colombia
Viajes la cabra
Flash Viajes

cra 7 # 32-52 Sur


Calle 8 # 52-6
cra 9 # 56-52
calle 9 # 78-56

Cod_municipio
5001
5059
8001
5059

Seleccionar las tuplas de la tabla

agencias que el municipio sea igual a 5059

codmunicupio=5059agencias
Para este caso solo salen dos agencias que cumplen con la condicin.

Seleccionar las tuplas de la tabla agencias que el municipio sea diferente a 5001
codmunicupio!=5001agencias
Para este caso salen todas las agencias pero las que tengan el cdigo diferente a 5001
para nuestro caso sales tres.

Proyeccin (Project)
El operador Proyeccin se utiliza para producir una nueva relacin desde
nueva relacin contiene slo algunos de los atributos de
seleccin de algunas de las columnas de una tabla

RR. Esta

RR, es decir, realiza la

RR.

Notacin en lgebra Relacional


Project en lgebra Relacional se representa por la letra griega pi: (A1,...,An)R

El resultado es una relacin seleccionando solo los atributos

A1,...,AnA1,...,An de la

relacin RR. Si A1,...,AnA1,...,An no incluye una llave (o clave), podran producirse


tuplas repetidas en el resultado, las cuales sern eliminadas.

Ejemplo 1.

MUNICIPIOS

Cod_Municipio Nombre_municipio
5001
5059
5306
8001

Medellin
Armenia
Girardot
Barranquilla

Direccion_municipio
Autopista 50 # 40-53
Calle 90 # 53-85
Cra 9 # 85-96
Cra 7 # 85-85

(cod_municipio,nombre_municipio)municipios
Finalmente la tabla municipio nos queda.

MUNICIPIOS

Cod_Municipio Nombre_municipio
5001
5059
5306
8001

Medelln
Armenia
Girardot
Barranquilla

Direccion_municipio
Autopista 50 # 40-53
Calle 90 # 53-85
Cra 9 # 85-96
Cra 7 # 85-85

Ejemplo 2.

AGENCIAS

Cod_agecia
1001
1002
1003
1004

Nombre_agencia

Direccion_Agencia

Viajemos
Viajes Colombia
Viajes la cabra
Flash Viajes

cra 7 # 32-52 Sur


Calle 8 # 52-6
cra 9 # 56-52
calle 9 # 78-56

Cod_municipio
5001
5059
8001
5059

(nombre_agencia,direccionagencia)(cod_agencia>1001agencias)

Finalmente la tabla municipio nos queda.

AGENCIAS

Cod_agecia

Nombre_agencia

1001 Viajemos
1002 Viajes Colombia
1003 Viajes la cabra
1004 Flash Viajes

Direccion_Agencia
cra 7 # 32-52 Sur
Calle 8 # 52-6
cra 9 # 56-52
calle 9 # 78-56

Cod_municipio
5001
5059
8001
5059

Producto cartesiano (Cross-Product)


En teora de conjuntos, el producto cartesiano de dos conjuntos es una operacin que
resulta en otro conjunto cuyos elementos son todos los pares ordenados que pueden
formarse tomando el primer elemento del par del primer conjunto, y el segundo
elemento del segundo conjunto. En el lgebra Relacional se mantiene esta idea con la
diferencia que RR y SS son relaciones, entonces los miembros de RR y SS son tuplas,
que generalmente consisten de ms de un componente, cuyo resultado de la
vinculacin de una tupla de RR con una tupla de SS es una tupla ms larga, con un
componente para cada uno de los componentes de las tuplas constituyentes. Es
decir Cross-product define una relacin que es la concatenacin de cada una de las
filas de la relacin RR con cada una de las filas de la relacin SS.
Notacin en lgebra Relacional
Para

representar Cross-product en

lgebra

Relacional

se

utiliza

terminologa: RS
Cabe mencionar que por notacin que: RSSR

AGENCIAS

Cod_agecia Nombre_agencia Direccion_Agencia Cod_municipio


1001
1002
1003
1004

Viajemos
Viajes Colombia
Viajes la cabra
Flash Viajes

Cra 7 # 32-52 Sur


Calle 8 # 52-6
cra 9 # 56-52
calle 9 # 78-56

MUNICIPIOS

Cod_Municipio Nombre_municipio Direccion_municipio


5001
5059
5306
8001

Medellin
Armenia
Girardot
Barranquilla

Autopista 50 # 40-53
Calle 90 # 53-85
Cra 9 # 85-96
Cra 7 # 85-85

101
102
103
104

la

siguiente

agenciasXmunicipios
Nos queda como resultado lo siguiente.

Cod_agecia Nombre_agencia Direccion_Agencia Cod_municipio Cod_Municipio Nombre_municipio Direccion_municipio


1001
1001
1001
1001
1002
1002
1002
1002
1003
1003
1003
1003
1004
1004
1004
1004

Viajemos
Viajemos
Viajemos
Viajemos
Viajes Colombia
Viajes Colombia
Viajes Colombia
Viajes Colombia
Viajes la cabra
Viajes la cabra
Viajes la cabra
Viajes la cabra
Flash Viajes
Flash Viajes
Flash Viajes
Flash Viajes

Cra 7 # 32-52 Sur


Cra 7 # 32-52 Sur
Cra 7 # 32-52 Sur
Cra 7 # 32-52 Sur
Calle 8 # 52-6
Calle 8 # 52-6
Calle 8 # 52-6
Calle 8 # 52-6
cra 9 # 56-52
cra 9 # 56-52
cra 9 # 56-52
cra 9 # 56-52
calle 9 # 78-56
calle 9 # 78-56
calle 9 # 78-56
calle 9 # 78-56

101
101
101
101
102
102
102
102
103
103
103
103
104
104
104
104

5001
5059
5306
8001
5001
5059
5306
8001
5001
5059
5306
8001
5001
5059
5306
8001

Medelln
Armenia
Girardot
Barranquilla
Medelln
Armenia
Girardot
Barranquilla
Medelln
Armenia
Girardot
Barranquilla
Medelln
Armenia
Girardot
Barranquilla

Autopista 50 # 40-53
Calle 90 # 53-85
Cra 9 # 85-96
Cra 7 # 85-85
Autopista 50 # 40-53
Calle 90 # 53-85
Cra 9 # 85-96
Cra 7 # 85-85
Autopista 50 # 40-53
Calle 90 # 53-85
Cra 9 # 85-96
Cra 7 # 85-85
Autopista 50 # 40-53
Calle 90 # 53-85
Cra 9 # 85-96
Cra 7 # 85-85

NaturalJoin

ThetaJoin

You might also like