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

Tema 4 Modelo Relacional Fin

Este documento describe el modelo relacional de bases de datos. Explica conceptos clave como relaciones, atributos, dominios, claves, tuplas e integridad referencial. También cubre temas como esquemas relacionales, restricciones inherentes y de usuario, y las reglas para transformar modelos conceptuales a la forma relacional.

Cargado por

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

Tema 4 Modelo Relacional Fin

Este documento describe el modelo relacional de bases de datos. Explica conceptos clave como relaciones, atributos, dominios, claves, tuplas e integridad referencial. También cubre temas como esquemas relacionales, restricciones inherentes y de usuario, y las reglas para transformar modelos conceptuales a la forma relacional.

Cargado por

David Deelavilla
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 PDF, TXT o lee en línea desde Scribd

Tema 4

Modelo Relacional

 El modelo relacional fue propuesto por Codd , en 1970,


 SYSTEM R, un proyecto importante fue el semillero de los DBMS relacionales

En el centro del modelo se encuentra la relación que es una tabla, matriz u ordenamiento
de datos.

Estática

Objetos permitidos

Dominio

Un dominio D es un conjunto finito de valores homogéneos y atómicos v1,v2,...,vn


caracterizados por un nombre.
 Son homogéneos porque todos son del mismo tipo
 Son atómicos porque son indivisibles

También se puede denotar:

D= {vi / P(vi)}
donde: P representa el predicado que cumplen los valores vi

Se puede definir por intención mencionando la propiedad o extensión enumerando los


valores. Existen dominios compuestos tal como ocurre con fecha que se maneja como una
composición de día, mes y año.

Se especifica un tipo de datos y el formato (definición física).

Ej. Dominio de departamentos de Bolivia, por extensión


Dom(departamento)= {LA PAZ, ORURO,SANTA CRUZ, COCHABAMBA, BENI, TARIJA,
CHUQUISACA, POTOSI, PANDO}

Ej. Dominio edad de una persona, por intensión


Dom(edad)= [0-120]

Atributo
Modelo relacional
73
Un atributo es el papel que tiene un determinado dominio D en una relación. Una
columna en la tabla se refiere a un atributo. Un atributo es una característica de un
individuo.

Se dice que D es el dominio de A  dom(A) cuando toma valores de ese dominio

Relación

Una relación R consiste de filas y columnas. Una relación es un conjunto de tuplas, cada
tupla define a un individuo.

Matemáticamente:
r(R) es un subconjunto del producto cartesiano que define los atributos.
r(R)  dom(A1)Xdom(A2)X...Xdom(An)

Ej.

00
  ORU 
   
1   LPZ 
     
       2   STA 
      
3 
   
 
99  
 PDO 

 
Producto Cartesiano:

t1=<00,  , 1,ORU>
t2=<00,  , 1 ,LPZ>
t3=<00,  , 1 ,STA>

ti=<01,  , 1,ORU>
tj=<02,  , 2 ,LPZ>
tk=<14,  , 2 ,ORU>

…..
tn=<99,  , 3 ,PDO>
Modelo relacional
74

R:

t1=<01,  , 1,ORU>
t2=<02,  , 2 ,LPZ>
t3=<14,  , 2 ,ORU>
t4=<27,  , 1 ,PTS>

RELACION: R
COD FIG NUM DEP
01  1 ORU
02  2 LPZ
14  2 ORU
27  1 PTS

En la tabla R cada fila representa a una tupla:

t1=<01,  , 1,ORU>
t2=<02,  , 2 ,LPZ>
t3=<14,  , 2 ,ORU>
t4=<27,  , 1 ,PTS>

Cada fila se denota como una tupla. En realidad tupla es un prefijo que significa “grupo
de”. Tupla es un conjunto ordenado de valores, esos valores describen algunas
características de un individuo de interés.

Intención o esquema de relación

Es un conjunto de n pares atributo-dominio subyacente {(Ai:Di)} donde n es el GRADO de


la relación. Se denota por R(A1:D1,A2:D2,..An:Dn) de manera completa, algunas veces de
manera abreviada como R(A1,A2,,..An). Corresponde a la cabecera de la tabla o relación.

RELACION: R
COD FIG NUM DEP

R(cod:Codigos,fig:Figuras,num:Numeros,dep:Departamentos)

R(cod:CHAR(2),Fig:BLOB,num:INT,dep:CHAR(3)

R(cod,fig,num,dep)
Modelo relacional
75

Extensión o instancia de relación

Es un conjunto de m tuplas {t1,t2,...,tm} donde cada tupla es un conjunto de n pares


atributo-valor. El número de tuplas m representa la CARDINALIDAD.

R:

t1=<01,  , 1,ORU>
t2=<02,  , 2 ,LPZ>
t3=<14,  , 2 ,ORU>
t4=<27,  , 1 ,PTS>

Ej.

Intensión o esquema de relación:

ESTUDIANTE(CI:NUMCIS,NOM:NOMBRES,DIR:DIRECCIONES,ING:SE)
ó
ESTUDIANTE(CI,NOM,DIR,ING)
ó
ESTUDIANTE
CI NOM DIR ING

Extensión o instancia de relación cuya cardinalidad es 3:

ESTUDIANTE
CI NOM DIR ING
40 JUAN BOLIVAR II/95
30 ANA SUCRE I/95
20 JOSE PAGADOR I/94

Clave

Es un conjunto no vacío de atributos que identifican de manera única a una tupla.

Clave candidata
Modelo relacional
76
Se considera clave mínima porque no tiene como subconjunto a otra clave que no sea ella
misma. Dicho de otra manera todos los atributos son imprescindibles para ser una clave, si
se quita alguno dejará de ser clave.

Clave principal

Es aquella clave candidata que elige el diseñador y/o usuario de la base de datos. En la
definición por intención se subraya.

Clave alternativa o secundaria

Es aquella clave candidata que no ha sido elegida como primaria

4.1.2 Restricciones inherentes

De la definición matemática de relación se deduce:

 No hay tuplas iguales


 El orden de las tuplas no es significativo
 El orden de los atributos(columnas) no es relevante
 Cada atributo toma un solo valor del dominio
 Regla de integridad de entidad: No hay valores nulos para atributos que son parte de
la clave

4.1.3 Restricciones de usuario

Sobre dominios

Se refiere al predicado definido sobre un conjunto de atributos, dominios o tuplas.

Integridad referencial:

Si una relación R2 (relación que referencia) tiene un descriptor que es la clave primaria de
la relación R1 (relación referenciada), todo valor de dicho descriptor debe concordar con
un valor de la clave primaria de R1 . El descriptor por lo tanto es una clave ajena (FOREING
KEY).

Esta es una restricción de comportamiento pues viene impuesto por el mundo real.

Ej.

R1=ESTUDIANTE(CI,NOM,DIR,ING)
R2=REGISTRA(CI,SIGLA,SEM,NOTA)
Modelo relacional
77

Referencia: REGISTRA.CI  ESTUDIANTE.CI

Se dice que CI en REGISTRA es clave ajena o foránea.

En la notación el operador punto (.) indica CI es un atributo de REGISTRA.

Restricciones de dependencias

Las dependencias como las funcionales, multivaludas y de combinación se dan entre


atributos, estas se estudian en el capítulo de teoría de la normalización.

4.2 Esquema relacional

Se refiere al conjunto de esquemas de relación (tabla) más las restricciones de integridad.


Se puede representar por el par:

< { Ri } , { Vi }>

Donde { Ri } es el conjunto de esquemas de relación y { V i } conjunto de restricciones de


integridad.

Una base de datos relacional se puede definir como una instancia de un esquema
relacional.

DDL-SQL

El lenguaje de definición de datos es útil para especificar la estática de un modelo. Usando


DDL-SQL se puede especificar técnicamente un esquema relacional.

Ej.

create schema academico


create domain nombres char(30)

create table estudiante


( ci char(10),
nom nombres,
dir char(20),
ing char(5),
primary key ci )

create table registro


( ci char(10)
Modelo relacional
78
sigla char(7)
sem char(5)
nota real(8,2)
primary key (ci,sigla,sem),
foreign key ci references estudiante,
foreign key sigla references materia)

create table materia


( sigla char(7),
nom char(20),
creditos integer,
primary key sigla )

4.2.1 Formas de llegar al Modelo Relacional

Diseño Lógico  Diseño Físico

Modelo Semántico(Conceptual) Modelo Relacional


 Entidad/Relación
 Orientado A Objetos

Reglas de transformación Entidad/Relación al Relacional

1) Regla de entidad fuerte


Todo tipo de entidad fuerte se transforma en una tabla donde la llave principal de
la entidad también es la clave principal de la tabla
b
a

E
E a b c

2) Regla general de relación


Toda relación se transforma en una tabla donde la tabla tiene los atributos que son
clave principal de los tipos de entidad que relaciona. Esta regla general se puede
particularizar de acuerdo a la relación en las siguientes reglas
Modelo relacional
79

x
a

y
b
R
E1 R E2 a x

3) Regla de relación con atributos descriptivos


Toda relación se transforma en una tabla donde la tabla tiene los atributos que son
clave principal de los tipos de entidad que relaciona más los atributos descriptivos
de la relación.
p

x
a

y
b

R
E1 R E2 p a x

4) Regla de Relación Binaria, con tipo de correspondencia 1:1


Toda relación binaria con tipo de correspondencia 1:1 no se transforma en una
tabla, sino que se modifica en una de las tablas resultantes de la regla 1 de los tipos
de entidad involucradas en la relación. Se aumenta la clave principal de una de
ellas en la otra, puede ser cualquiera.

i)
E1 E2
x
a

a b x y a
y
b

(_,1) (_,1) ii)


E1 R E2 E1 E2
a b x x y

Figura 4.8. Regla general de relación binaria, con cardinalidad máxima 1:1

5) Regla de Relación Binaria, con tipo de correspondencia máxima 1:N


Toda relación binaria con tipo de correspondencia 1:N no se transforma en una
tabla, sino que se modifica en una de las tablas resultantes de la regla 1 de los tipos
Modelo relacional
80
de entidad involucradas en la relación. Se aumenta la clave principal en la tabla
resultante que tiene cardinalidad máxima N del modelo entidad relación.

x
a

y
b

(_,1) (_,N) E1 E2
E1 R E2 a b x y a

6) Regla de Relación Reflexiva, con Tipo de Correspondencia 1:1 ó 1:N


Toda relación reflexiva con tipo de correspondencia 1:1 ó 1:N no se transforma en
una tabla, sino que se modifica en la tabla resultante de la regla 1 del tipo de
entidad involucrada en la relación. Se aumenta la clave principal nuevamente pero
para evitar conflicto de nombres se modifica el nombre de este atributo.
a

a
b

b
(_,1) (_,1)
E1 R E1 R

(_,1) (_,N)

E1
a b a1

7) Regla de supertipo/subtipo
El supertipo sigue la regla 1, el subtipo se transforma en una tabla que tiene como
atributos lo del suptipo junto con la clave del supertipo.
Modelo relacional
81

b
E
a b
E
E1
m

x
a m

E2
E1 E2 a x

8) Regla de Entidad Débil


La entidad débil junto con la relación en la que participa se transforma en una
tabla donde los atributos son de la entidad débil más el atributo clave principal de
la entidad fuerte del cual depende.
x
a

y
b

E2
E1 R E2
Cliente x y a
Modelo relacional
82
Ejercicio: Transformar el siguiente modelo Entidad/Relación al modelo Relacional

direccion
telefono
nombre
numero

fecha

total

nit
(0,N) (1,1)
Factura Tiene Cliente

(1,1) 1

Persona Empresa

representante
cantidad
monto

parte Detalle Contiene


(1,N) (0,N)

(1,1)

Producto

Precio_unitaraio
descripcion
codigo

clase
Modelo relacional
83

TRANSFORMACION DEL MODELO ORIENTADO A OBJETOS AL MODELO RELACIONAL

1-. Regla para un Clase

C
ID a
b
c

C
a b C

2-. Regla para una asociación

C1 A C2
ID a ID x
b y
c z

A
Modelo relacional
84
a x

3-. Regla para una clase-Asociación

C1 C2
ID a ID x
b y
c z

CA
p
q

CA
p q a x

4-. Regla asociación con multiplicidad 1 a 1

C1 A C2
ID a ID x
b y
c z
X

i) C1 C2
a b c x Y z a

ii) C1 C2
a b c x X y z

5-. Regla asociación con multiplicidad 1 a *

C1 A C2
ID a ID x
Modelo relacional
85
b y
c z
X

C1 C2
a B C x Y z a

6-. Regla de Agregación/Composición

Ctodo Cparte
ID a ID x
b y
c z

Ctodo Cparte
a b c x y z a

7-. Regla de Generalización(Subclase)

C
ID a
b
c

C1 C2
p x
q y

Ctodo C2
p q a x y a

Ejemplo. Obtener el modelo relacional del siguiente modelo orientado a objetos


Modelo relacional
86

Receptor

Destino
Firma
- numdir: int
Es para NotaDeEntrega
- zona: char
- aclaracion: char - num: int
- direccion: char - fecha: char
- observaciones: char Tiene
Cliente
Persona
- numclie: int
Contiene - dir: char - ci: char
Responsable - tel: char - nom: char

Producto Detalle
- codigo: char Corresponde
- monto: float
- nombre: char
- cantidad: float Conductor
- calidad: char
- numconductor: int

Conduce

Movilidad

- placa: char
- marca: char
Modelo relacional
87
DINAMICA

De manera general se considera las siguientes operaciones de acción:


 Insertar
 Modificar
 Eliminar
El éxito del modelo relacional, a parte de su sencillez se debe fundamentalmente a la
dinámica que tiene. Pues resulta que se plantearon formalismos para representar estas
operaciones en la marco de lo que se denomina Lenguajes de Consulta.

4.3.1 LENGUAJES DE CONSULTA

La dinámica del modelo relacional esta definida formalmente por diferentes lenguajes:

LENGUAJE Puro Usable Procedimental Especificación


Algebra X X
relacional
Calculo X X
relacional
QBE X X
QUEL X X
SQL X X

Se dice que es un lenguaje puro por su formalismo matemático. Es usable (ó comercial)


pues generalmente está implementado o disponible en los DBMS. Se dice que es
procedimental pues se indica el qué y cómo se obtienen los datos, en cambio es de
especificación cuando solamente se indica el qué. A continuación se describen estos
lenguajes, SQL se deja para el siguiente capítulo.

4.3.2 Algebra relacional

Es un lenguaje puro y procedimental afín a la teoría de conjuntos. Es una colección de


operaciones que sirven para manipular relaciones enteras. Debe estar claro que en todos los
lenguajes se cumple la propiedad de cierre, en el sentido de que se trabaja con relaciones o
tablas y como resultado de aplicar alguna operación se obtiene una tabla o relación. Como
ocurre en la aritmética se opera con números y se obtiene números.

A modo de ejemplo usaremos el siguiente esquema relacional:

Estudiante(ci,nom,dir,tel,ing,nac)
Registro(ci,sigla,sem,nota)
Materia(sigla,nom,creditos)
Modelo relacional
88
Con las restricciones de integridad referencial:
Registra.ci  Estudiante.ci
Registra.sigla  Materia.sigla

Operaciones

Selección ()

En general su sintaxis es:


<condicion> (R)

La operación de selección sirve para seleccionar un subconjunto de las tuplas(filas) de una


relación que satisfacen un predicado (una condición). Se suele indicar que hace una
extracción horizontal.

Por ejemplo se tiene la siguiente relación R:

R a b c
1 2 3
4 3 2
3 2 2

 b=2 ( R ) a b c b=c (R) a b C a>b (R) a b c


1 2 3 3 2 2 4 3 2
3 2 2 3 2 2

Ej. Seleccionar las materias que tienen más de 6 créditos.


creditos>6 (materia)

Ej. Obtener los estudiantes que han ingresado el semestre 2018/1


ing=’2018/1’ (estudiante)

Proyeccion ()

Su sintaxis:
<lista de atributos> (R)

La operación de proyección selecciona algunas columnas y elimina las tuplas repetidas. La


lista de atributos se describe separados por coma (,). Se dice que hace una extracción
vertical, como se muestra en la figura:

R a b C
1 2 3
4 3 2
3 2 2
Modelo relacional
89

 b ( R ) b  b,c (R) b c  a,c (R) A c


2 2 3 1 3
3 3 2 4 2
2 2 3 2

Ej. Sacar el nombre y dirección de los estudiantes


nom,dir (estudiante)

Ej. Obtener los nombres y creditos de las materias


nom,creditos (materia)

Ej. Obtener los nombres de estudiantes que han ingresado el semestre 2018/1

nom (ing=’2018/1’ (estudiante))

En el metalenguaje se puede usar el operador de asignación()

La anterior consulta:
1. X ing=’2018/1’ (estudiante)
2. nom (x)

Producto cartesiano ( X )

Sintaxis:
RXS

El producto cartesiano combina todas las tuplas de las relaciones participantes, además las
tuplas resultantes tienen los atributos de estas relaciones. En general si R tiene n atributos y
S tiene m atributos las tuplas creadas son de n+m atributos.

R a b C S X y R x S a b c x y
1 2 3 1 2 1 2 3 1 2
4 3 2 1 5 1 2 3 1 5
3 2 2 3 4 1 2 3 3 3
4 3 2 1 2
4 3 2 1 5
4 3 2 3 3
3 2 2 1 2
3 2 2 1 5
3 2 2 3 3
Modelo relacional
90
Combinacion-JOIN ( )

La operación de combinación se denota por, sirve para combinar tuplas relacionadas de dos
relaciones en una sola tupla, es muy importante en las bases de datos. Se podría decir que
es una combinación con sentido a diferencia del producto cartesiano. Se podría definir esta
operación en base a la siguiente expresión:

R <condición> S = <condición> ( R X S )

R a b C S X y R x S a b c x y
1 2 3 1 2 1 2 3 1 2
4 3 2 1 5 1 2 3 1 5
3 2 2 3 4 1 2 3 3 3
4 3 2 1 2
4 3 2 1 5
4 3 2 3 3
3 2 2 1 2
3 2 2 1 5
3 2 2 3 3

R a=x S a b c x y
1 2 3 1 2
1 2 3 1 5
3 2 2 3 3

La condición de combinación goza de una característica, se compara el valor de un atributo


de R con el valor de otro atributo de S, obviamente debe cumplirse que ambos tengan el
mismo dominio. Cuando el operador relacional es igualdad y tiene que ver con integridad
referencial, se suele denominar COMBINACION NATURAL.

Ej Los estudiantes con sus materias registradas

estudiante estudiante.ci=registro.ci registro

Union ()

Es una operación de la teoría de conjuntos, necesita para realizarse que las relaciones sean
compatibles es decir tener la misma cantidad de atributos y a cada par de atributos
correspondientes deben tener el mismo dominio.

Se denota por:
Modelo relacional
91

RS
El resultado de esta operación es una relación que incluye tuplas que están en R o en S.

R a b S x y
1 2 1 2
4 3 1 5
3 2 3 2

R S a b
1 2
4 3
3 2
1 5

Interseccion ()

Necesita que los operandos sean compatibles.

Se denota por:
RS
El resultado de esta operación es una relación que incluye tuplas que están tanto en R como
en S.

R a b S x y
1 2 1 2
4 3 1 5
3 2 3 2

R S a b
1 2
3 2
Figura 4.20. Intersección.

Diferencia (-)

Requisito es que las relaciones sean compatibles

Se denota por:
R-S
El resultado de esta operación es una relación que incluye tuplas que están en R pero no en
S.
Modelo relacional
92
R a b S x y
1 2 1 2
4 3 1 5
3 2 3 2

R-S a b
4 3

Division ( : )

Se denota por:
R:S
Esta operación nos da los valores contenidos de R en S. Otra forma de ver esto es como un
operador derivado donde R-S indica que se tiene los atributos de R que no están en S.

R : S = R-S (R)- R-S (R-S(R) X S – R)

4.3.3 Cálculo relacional

Es un lenguaje de especificación, es decir en la consulta solamente se indica el Que de la


información que se requiere, está basado en la Lógica de Predicados de Primer Orden. Hay
dos formas el calculo relacional orientado a tuplas y el calculo relacional orientado a
dominios, se presenta el primero.

a) Cálculo relacional orientado a tuplas

Sintaxis:
{t / Q(t)}
Donde: t Variable tupla
Q Predicado o condición (Formula Bien Definida FBD)

Son átomos: r  R
r[a]  s[b]
r[a]  cte
Donde  es un operador relacional como: >,>=,<,<=,=,<>,!=

Reglas para una Formula Bien Definida:

1. Todo átomo es una FBD


2. Sea  una FBD entonces   es FBD
3. Sean  y  FBDs, entonces
a.   
b.   
c. 
d. 
Modelo relacional
93

Ej. Las materias que tienen más de seis créditos

{ t / t  materia  t[creditos]>6}

Usando la sentencia más elaborada:

{t / tQ(t)}

Ej. Obtener el nombre de las materias que tienen más de seis créditos
{t / s(s  materia  s[creditos]>6  t[nom]=s[nom] )}

Un sentencia Cálculo relacional que obtiene información en más de una tabla, usando el
equivalente a una operación de combinación.

Ej. Los nombres de los estudiantes que llevan INF2430 el semestre 2020/1

{t / s(s  registro  s[sigla]=’INF2430’  s[sem]=’2020/1’ )  r (r 


Estudiante  s[ci]=r[ci]  t[nom]=r[nom]) }

La condición s[ci]=r[ci], es necesaria para denotar la operación de combinación.

b) Calculo relacional orientado a dominios

Sintaxis:
{<v1,v2,..,vn> / Q(v1,v2,..,vn )}

Donde: vi representan variabes de dominio.


Q predicando o condición (Formula Bien Definida)

Son átomos: <v1,v2,..,vn>  R


v1  v2
v1  cte
Donde  es un operador relacional como: >,>=,<,<=,=,<>,!=

Reglas para una Formula Bien Definida:

1. Todo átomo es una FBD


2. Sea  una FBD entonces   es FBD
3. Sean  y  FBDs, entonces
a.   
b.   
c. 
d. 
Modelo relacional
94
Ej. Las materias que tienen más de seis créditos
Variables de dominio: En la tabla materia s para SIGLA, n para NOM, c para CREDITOS
{ <s,n,c> / (<s,n,c>  Materia  c>6 )}

Ej. Los estudiantes que han ingresado el semestre 2018/1.

Variables de dominio: En la tabla estudiante c para CI, n para nombre, d para DIR, i para
ING, t para TEL, a para NAC.
{ <c,n,d,t,i,a> / (<c,n,d,t,i,a>  Estudiante  i=’2004/1’ )}

Usando la sentencia más elaborada:


{<v1,v2,..,vn> /  v1,v2,..,vnQ(v1,v2,..,vn )}

Ej. Obtener el nombre de las materias que tienen más de seis créditos
{ <n> /  s,c (<s,n,c>  Materia  c>6 )}

Un sentencia Cálculo relacional que obtiene información en más de una tabla, usando el
equivalente a una operación de combinación.

Ej. Los nombres de los estudiantes que llevan INF2430 el semestre 2020/1
Variables de dominio: En la tabla estudiante c para CI, n para nombre, d para DIR, i para
ING. En la tabla Registra c para CI, s para SIGLA, e para SEM, o para NOTA.

{ <n> /  c,d,i (<c,n,d,i>  Estudiante )   s,e,o (<c,s,e,o>  Registro  s=’INF2430’ 


e=’2020/1’ )}

Nótese que no está explícito la operación de combinación como en el cálculo relacional


orientado a tuplas, al denominar la misma variable de dominio con c para CI se asume este
aspecto.

4.3.4 QUEL

Su acrónimo significa lenguaje de consulta (QUEry Language), basado en el cálculo


relacional, se implemento con INGRES un manejador de base de datos muy importante.

Sintaxis

RANGE OF <variable> IS <tabla o relacion>


RETRIEVE <lista de atributos>
WHERE <Condición o Predicado>

Ej. Las materias con más de seis créditos

RANGE OF s IS materia
RETRIEVE (s.sigla,s.nom,s.creditos)
WHERE s.creditos>6
Modelo relacional
95

Ej. Los nombres de los estudiantes que llevan INF2430 el semestre 2020/1

RANGE OF s IS registro
RANGE OF r IS estudiante
RETRIEVE (r.nom)
WHERE s.ci=r.ci AND s.sigla=’INF2430’ AND s.sem=’2020/1’

4.3.5 QBE

El lenguaje de consulta QBE (Query By Example) es también de especificación, está más


orientado a la interfaz de usuario.

Para una consulta se asume que se tiene los esquemas de las relaciones de las cuales se
necesita información, están presentes de acuerdo al siguiente esquema:

Nombre de la tabla o Relación Atributos de la Tabla


Funciones y operaciones Zona de predicado o condición
Zona de mostrar datos

Funciones y operaciones
.P Mostrar
.I Insertar
.D Borrar
.U Actualizar

> Mayor que


>= Mayor o igual que
< Menor que
<= Menor o igual que

Ej. Las materias que tienen más de seis créditos

MATERIA Sigla Nom Creditos


.P >6

Ej. Los nombres de materias que tienen más de seis créditos

MATERIA Sigla Nom Creditos


.P >6

Ej. Los registros de INF2430 del semestre 2020/1

REGISTRO ci Sigla Sem Nota


.P INF2430 2020/1
Modelo relacional
96

Ej. Los registros de INF2430 con nota entre 60 y 70

REGISTRO ci Sigla Sem Nota


.P INF2430 >=60
.AND <=70

Ej. Los estudiantes que ha ingresado el año 2018

ESTUDIANTE ci Nom Dir Tel Ing Nac


.P 2018/1
2018/2

Ej. Los nombres de los estudiantes tienen registrado INF2430 el semestre 2020/1

ESTUDIANTE ci Nom Dir tel Ing Nac


_X .P

REGISTRO ci Sigla Sem Nota


_X INF2430 2020/1

El uso de variables temporales se denota con _ , por ejemplo _X

También podría gustarte