Documente Academic
Documente Profesional
Documente Cultură
EXTENSIN BOCHIL
Unidad V:Algebra relacional.
Catedrtico:
COUTIO ALFARO ALEJANDRO
Wiliam Hernndez Lpez
7 de mayo del 2015
Operaciones
fundamentales del algebra
relacional.
Las
expresiones
fundamentales
del
lgebra relacional se componen de
alguna de las siguientes:
Una relacin de la base de datos
Una relacin constante
Definicin:
Sea R[A1..An], y P una propiedad asociada a {A1...An} y r
una instancia de R, el operador p-seleccin aplicado a r
y que notaremos por P (r) obtiene aquellas tuplas de r
para las que p es cierta:
r=
Codigo
S1
S2
S3
S4
S6
S7
S8
S9
S10
Nombre
Juan Lopez
Jose Sanchez
Antonio Perez
Jose Lopez
Carmen Lopez
Julia Sanchez
Juana Perez
Luis Gomez
Maria Galvez
Ciudad
Granada
Jaen
Cadiz
Sevilla
Cordoba
Granada
Jaen
Almeria
Sevilla
Status
20
15
20
25
30
25
10
35
30
Codigo
S4
P (r)= S6
S7
S9
S10
Nombre
Jose Lopez
Carmen Lopez
Julia Sanchez
Luis Gomez
Maria Galvez
Ciudad
Sevilla
Cordoba
Granada
Almeria
Sevilla
Status
25
30
25
35
30
Definicin:
Sean R[A1..An], y S[B1..Bm], dos relaciones cualesquiera y dos
instancias r y s de las
misma, el producto cartesiano de ambas instancias es el
conjunto de tuplas
resultante de hacer el producto cartesiano considerando
ambas instancias como
A B D
a1 b1 d1
conjuntos de tuplas.
a1 b1 d2
D
a1 b1 d3
Ej. supongamos R[A,B] y S[D],d1y sean r y s dos instancias:
a2 b2 d1
d2
d3
a2
a2
a3
a3
a3
a4
a4
a4
b2
b2
b3
b3
b3
b4
b4
b4
d2
d3
d1
d2
d3
d1
d2
d3
Definicin:
Sean R[A1..An], y S[B1..Bm], dos relaciones cualesquiera, P una
propiedad
Definicin:que implica a atributos de ambas relaciones y dos
Sean rR[A
y S[B
relaciones cualesquiera, P
instancias
y s1..A
den],las
misma,
definimos:
1..Bm], dos
una propiedad que implica a atributos de ambas relaciones y
dos instancias r y s de las misma, definimos:
r P- s = P(rs)
r P- s = P(rs)
La
conexiones
semanticas:
Ejemplos
Ejemplos
Titul
o
ISB
N
Fech
a
editoria
l
ISBN
liro.isbn=escribe.isbn(libroescribe)
codig ISBN liro.isbn=trata.isbn(librotrata)
o
Nombr
e
las
Las
operaciones
bsicas
del
lgebra
relacional se han ampliado de varias
maneras.
Una
ampliacin
sencilla
es
permitir operaciones aritmticas como parte
de la proyeccin.
Una ampliacin importante es permitir
operaciones de agregacin, como el clculo
de la suma de los elementos de un conjunto,
o su media. Otra ampliacin importante es
la operacin reunin externa, que permite a
las expresiones del lgebra relacional
trabajar con los valores nulos que modelan
Valores nulos.
Es necesario analizar la forma en la que las
operaciones del lgebra relacional manejan
los valores nulos (y las complicaciones que
surgen).
Las operaciones y comparaciones con valores
nulos se deberan evitar siempre que sea
posible.
Valor nulo: Valor desconocido o no existente.
Operaciones Aritmticas
Dado que el valor especial nulo indica valor
desconocido o no existente, cualquier
operacin aritmtica (como +, -, * y /) que
incluya valores nulos debe devolver un valor
nulo.
Comparaciones
Cualquier comparacin (como <, <=, >, >=,
= y ) que incluya un valor nulo se evala al
valor especial desconocido Como no se
puede
decir
si
el
resultado
de
la
comparacin es cierto o falso, se dice que el
resultado
es
un
nuevo
valor
lgico
denominado desconocido.
Seleccin
La operacin seleccin evala el predicado P en
P(E) sobre cada tupla de E
Si el predicado devuelve el valor cierto, se aade
la tupla al resultado
Si el predicado devuelve desconocido o falso, la
tupla no se aade al resultado
Proyeccin
La operacin proyeccin trata los nulos como
cualquier otro valor al eliminar duplicados.
La decisin es un tanto arbitraria porque sin
saber cul es el valor real no se sabe si los dos
valores nulos son duplicados o no.
Operaciones de modificaciones
a la Base de Datos
Para insertar datos en una relacin, se
especifca la tupla que se desea insertar o bien
se formula una consulta cuyo resultado sea el
conjunto de tuplas que se desea insertar.
La instruccin para hacer una insercin tiene
la siguiente sintaxis:
INSERT INTO R(a1; :::; an) VALUES (v1; :::vn);
Ejemplo:
INSERT INTO cuenta
VALUES (null, 'C-401', 24000);
SELECT num_cuenta
FROM cuenta
WHERE nombreSucursal = 'San Angel';
Supresin
Si se desea eliminar una tupla de una relacin debe
usarse la instruccin:
DELETE FROM R WHERE condicion;
Ejemplo
DELETE FROM cuenta
WHERE nombre Sucursal IN (SELECT nombre
Sucursal
FROM sucursal
WHERE ciudad = 'Cuernavaca');
Actualizacin
Si solo se desea modificar el valor de ciertos
campos, se puede
utilizar la instruccin de actualizacin cuya
sintaxis es:
UPDATE R SET valores WHERE condicin;
FIN