Vous êtes sur la page 1sur 9

INFORME DE TRABAJO Nro.

1
CONTROL DE TRANSACCIONES EN
BASES DE DATOS
GESTION
Y
DE DIAGRAMA CONCEPTUAL DE
ELABORACION
BASES DE DATOS ORIENTADO A OBJETOS
Edwin Callejas Pinto

Captulo 1

CONTROL DE TRANSACCIONES
EN UN SISTEMA BANCARIO
1.1.

CONTROL DE TRANSACCIONES EN SISTEMA DE GES DE BASES DE DATOS


TION

Una transacci
on en un Sistema de Gestion de Bases de Datos es un conjunto de ordenes que
se ejecutan formando una unidad de trabajo, en forma indivisible o atomica. Las propiedades
requeridas para las transacciones se denomina ACID (Atomicidad, Consistencia, Aislamiento,
Durabilidad), las cuales garantizan que cuando se inicia un proceso el mismo debe concluir de
manera correcta o debe ser anulado, en este caso se retorna a las condiciones de partida del
sistema y ninguna operaci
on queda permanente, es decir cuando por alguna causa el sistema
debe cancelar la transacci
on, empieza a deshacer las ordenes ejecutadas hasta dejar la base de
datos en su estado inicial como si la orden de la transaccion nunca se hubiese realizado. El
diagrama conceptual es:

Figura 1.1: Diagrama conceptual de la transaccion.(ModuloI Curso de doctorado)

T1. Transacciones y BDOO

1.2.

Edwin Callejas Pinto

CONTROL DE LA TRANSACCION

Otro esquema que permite visualizar la forma del proceso de la transaccion se muestra en la
siguiente figura, en la misma se muestra el papel que juegan las instrucciones
BEGIN: Especifica que va a empezar una transaccion.
COMMIT: Le indica al motor que puede considerar la transaccion completada con exito.
ROLLBACK: Indica que se ha alcanzado un fallo y que debe restablecer la base al punto
de integridad.
Por ejemplo para una transacci
on bancaria de traspaso de un importe de la cuenta Nro1 a la
cuenta Nro2, s emuestra en el siguiente diagrama que puede ser codificado en cualquier programa:
Inicio

Cargar A = NroCta1
Cargar B = NroCta2
Cargar I = Importe
A := A I
B := B + I
Actualizar variables (A,B,fecha)

No

Si
Proceso Ok?

ROLLBACK

COMMIT

Error en la Transaccion

Escribir en la BD

Deshacer operaciones

Fin
Figura 1.2: Ejemplo de transaccion bancaria

Captulo 2

BASE DE DATOS PARA UNA


EMPRESA DE CADENA DE
HOTELES
2.1.

ESQUEMA CONCEPTUAL

Se ha tomado como ejemplo la elaboracion de una base de datos para una cadena de hoteles,
cuyo diagrama conceptual es:

Figura 2.1: Diagrama conceptual de la BDOO de la cadena de hoteles

T1. Transacciones y BDOO

2.2.

Edwin Callejas Pinto

DIAGRAMA DE CLASE

El diagrama de clase es:

Figura 2.2: Diagrama de clase de la BDOO de la cadena de hoteles

2.3.
2.3.1.

DE LA BASE DE DATOS
DISENO
DE TIPOS DE DATOS
DEFINICION

define data type Direccion: tuple[calle: string, zona: string, ciudad:


string, numero:integer]
define data type Telefonos: set(integer)
define data type Fecha:tuple[a~
no:integer, mes:integer, dia:integer];

T1. Transacciones y BDOO

2.3.2.

Edwin Callejas Pinto

DE TIPOS DE OBJETOS
DEFINICION

Define object type Hotel extent Hoteles


type
tuple [ nombre: string,
nit: integer,
gerente:string,
nro_habitaciones: integer,
direccion: Direccion,
telefono: Telefonos
habitaciones set(Habitacion) inverse Habitacion:hot
]
operations
crear_nuevo_hotel: Hotel,
destruir_hotel(): Boolean,
a~
nadir_habitacion(h: Habitacion): boolean,
quitar_habitacion(h:Habitacion):boolean;

define object type Habitacion extent Las_Habitaciones


type
tuple [ numero: integer,
costo: real,
estado: boolean,
tipo: string,
nrocamas: integer,
nropiso:integer,
servicios: set(string)
hot: Hotel inverse Hotel: habitaciones
reservahab: Reserva inverse Reserva: listahabitaciones
]
operations
crear_nueva_habitacion: Habitacion,
destruir:habitaci
on(): boolean,
devolverEstado():boolean,
devolverNrocamas():integer,
devolverCosto(): real,
establecerEstado(),
establecerNrocamas(),
establecerCosto(),
mostrarServicios() ;
define object type Suit inherit Habitacion extent Suits
type
Tuple[ nombre: string,
telefono: integer
]

T1. Transacciones y BDOO

Edwin Callejas Pinto

operations
crear_nueva_suit: Suit,
destruir_suit(): boolean;

define object type Huesped extent Huespedes


type
Tuple[
apellido_paterno: string,
apellido_materno:string,
nombres:string,
documento: string,
nrodocumento: string,
reservahab: Reserva inverse Reserva huespedTitular,
domicilio: Direccion,
tel
efono: Telefonos
]
operations
crear_nuevo_huesped: Huesped,
destruir_huesped(): boolean;
tiempo_de_estancia(): integer;
define objet type Nacional inherit Huesped extent Nacionales
type
nit: string
operations
crear_nuevo_huespedNacional: Nacional,
destruir_huespedNacional(): boolean;
define object type Extranjero inherit Huesped extent Extranjeros
type
tuple[
pais: string,
visa: boolean,
vencimiento: Fecha
]
operations
crear_nuevo_huespedExtranjero: Nacional,
destruir_huespedExtranjero(): boolean;
define object type Reserva
type
tuple[fechaReserva: Fecha,
fechaEntrada: Fecha,
fechaSalida: Fecha,

extent Reservas

T1. Transacciones y BDOO

Edwin Callejas Pinto

huespedTitular: Huesped inverse Huesped: reservahab,


listahuespedes: set(Huesped),
listahabitaciones: set(Habitacion) inverse Habitacion: reservahab;
facturarelacionada: Factura inverse Factura: reser
montoReserva: Real
]
operations
crear_nueva_reserva: Reserva,
destruir_reserva(): boolean,
adicionarHuesped(h: Huesped):boolean,
eliminarHuesped(h: Huesped):boolean,
cancelarReserva(r: Reserva): boolean
define object type Factura extent Facturas
type
tuple[
nroFactura: Integer
fechaEmision: Fecha
total: Real
descripcion: set(string)
reser: Reserva inverse Reserva: facturarelacionada
operations
crear_nueva_factura: Reserva,
destruir_factura(): boolean;

Bibliografa
[1] Aguilar R. Modelos de Bases de datos avanzados. Modulo I. Curso de Doctorado. Universidad Nacional de Siglo XX. 2015.
[2] Aguilar R. Base de datos orientado a objetos. Modulo II. Curso de Doctorado. Universidad
Nacional de Siglo XX. 2015.
[3] Elmarsi and Navathe. Fundamentos de Sistemas de bases de datos.Pearson Education. 2007.
[4] Mannino M. Administraci
on de bases de datos: dise
no y desarrollo de aplicaciones. McGrawHill. 3ra Ed. 2007.
[5] Silverschatz et.al. Fundamentos de bases de datos. McGrawHill. 5ta Ed. 2006.

Vous aimerez peut-être aussi