Tema 3. El modelo Relacional

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Tema 3. El modelo Relacional"

Transcripción

1 Tema 3. El modelo Relacional Juan Ignacio Rodríguez de León Resumen Presenta el modelo entidad-relación. Visión de alto nivel de las cuestiones referentes a diseño de bases de datos y los problemas encontrados al intentar reflejar la semántica de aplicaciones reales dentro de los confines de un modelo de datos. Conceptos básicos. Restricciones. Claves. Cuestiones de diseño. Diagrama entidad-relación. Conjuntos de entidades débiles. Características del modelo E-R extendido. Diseño de un esquema de base de datos E-R. Reducción de un esquema E-R a tablas. El lenguaje de modelado unificado UML El modelo Relacional En este capítulo se estudia en primer lugar los fundamentos del modelo relacional, que proporciona una forma muy simple y potente de representar datos. A continuación se describen tres lenguajes formales de consulta; los lenguajes de consulta se usan para especificar las solicitudes de información. Los tres que se estudian en este capítulo no son cómodos de usar, pero a cambio sirven como base formal para lenguajes de consulta que sí lo son y que se estudiarán más adelante. 1. La estructura de las bases de datos relacionales Una base de datos relacional consiste en un conjunto de tablas, a cada una de las cuales se le asigna un nombre exclusivo. Cada fila de la tabla representa una relación entre un conjunto de valores. Dado que cada tabla es un conjunto de dichas relaciones, hay una fuerte correspondencia entre el concepto de tabla y el concepto matemático de relación, del que toma su nombre el modelo de datos relacional. Las columnas de cada tabla representan atributos (igual que en el modelo E-R en el Capítulo 2). Para cada atributo hay un conjunto de valores permitidos, llamado dominio de ese atributo. Formalmente se define una relación como un subconjunto del producto cartesiano de los dominios de cada atributo. Si la relación R tiene como atributos a 1, a 2,..., a n, siendo D 1, D 2,..., D n los dominios correspondientes, entonces R D 1 D 2... D n La única diferencia con el modelo matemático es que se han asignado nombres a los atributos. Como las tablas son esencialmente relaciones, se utilizarán los términos matemáticos relación y tupla en lugar de los términos tabla y fila. Dado que las relaciones son conjuntos se utiliza la notación matemática t r para denotar que la tupla t está en la relación r. Se utiliza la notación t[atributo] 1

2 2 EL ÁLGEBRA RELACIONAL 2 para denotar el valor de t en el atributo atributo. El orden de las tuplas es irrelevante, como en todo conjunto matemático. Se exigirá que, para toda relación r, los dominios de los atributos de r sean atómicos (indivisibles). Un valor de dominio que es miembro de todos los dominios posibles es el valor nulo (NULL), que indica que el valor es desconocido o no existe. Los valores nulos crean dificultades al acceder o modificar la base de datos y, por tanto, deben evitarse en lo posible. Se adopta el convenio de utilizar nombres en minúsculas para las relaciones y nombres que comiencen por una letra mayúscula para los esquemas de las relaciones. Siguiendo esta notación, se utilizará Esquema-cuenta para denotar el esquema de la relación cuenta. Por tanto, Esquema cuenta = (numero cuenta, nombre sucursal, saldo) y se representa que cuenta es una relación de Esquema-cuenta mediante: 1.1. Claves cuenta(esquema cuenta) Los conceptos de superclave, clave candidata y clave primaria, explicadas en el tema 2, son equivalentes en el modelo relacional. Además, fruto de la conversión hecha del modelo E-R al relacional, en la que aparecían nuevas tablas y atributos, aparece la clave externa o foránea. Una clave externa es cuando una relación incluye entre sus atributos la clave primaria de otra relación. La primera relación se denomina relación referenciante, la segunda, relación referenciada Diagramas de esquema Un diagramas de esquema representa el esquema de la base de datos, junto con las dependencias de clave primaria y externa. Cada relación aparece como un cuadro con los atributos listados dentro de él y el nombre de la relación encima. Una línea horizontal separa los atributos que forman la clave primaria del resto. A diferencia de los diagramas E-R, aquí se muestran las claves externas. 2. El álgebra relacional El álgebra relacional es un lenguaje de consulta procedimental. Consta de un conjunto de operaciones que toman como entrada una o dos relaciones y producen como resultado una nueva relación. Las operaciones fundamentales del álgebra relacional son selección, proyección, unión, diferencia de conjuntos, producto cartesiano y renombramiento. Existen otras operaciones no fundamentales, (en el sentido de que se pueden definir usando las elementales) como pueden ser la intersección de conjuntos, la reunión natural, la división y la asignación.

3 2 EL ÁLGEBRA RELACIONAL Operaciones fundamentales Las operaciones selección, proyección y renombramiento se denominan unarias porque operan sobre una sola relación. Las otras tres operaciones operan sobre pares de relaciones y se denominan, por lo tanto, operaciones binarias La operación selección σ La operación selección selecciona tuplas que satisfacen un predicado dado. Se utiliza la letra griega sigma minúscula (σ) para denotar la selección. El predicado aparece como subíndice de σ. La relación del argumento se da entre paréntesis a continuación de σ. Por tanto, para seleccionar las tuplas de la relación préstamo en que la sucursal es Navacerrada hay que escribir σ nombre sucursal=navacerrada (Prestamo) Se permiten realizar comparaciones usando los operadores =,, <,, > o en el predicado de selección. Además, se pueden combinar varios predicados en uno mayor utilizando las conectivas lógicas y ( ) y o ( ). El predicado de selección puede incluir comparaciones entre dos atributos. Dado que el valor especial nulo indica valor desconocido o inexistente, cualquier comparación que implique a un valor nulo se evalúa como falsa La operación proyección π La operación proyección es una operación unaria que devuelve la relación pasada como argumento, excluyendo algunos atributos. En otras palabras, nos permite suprimir columnas. Dado que las relaciones son conjuntos, se eliminan las filas duplicadas en la relación resultante. La proyección se denota por la letra griega mayúscula pi (Π) Se crea una lista de los atributos que se desea que aparezcan en el resultado como subíndice de Π. La relación argumento se escribe a continuación entre paréntesis. Por ejemplo, la consulta para obtener los números de préstamo y el importe de la relación prestamo (suprimiendo el tercer atributo, nombre sucursal), sería: Π numero prestamo,importe (prestamo) Composición de operaciones relacionales El resultado de una operación relacional es también una relación. Por ejemplo, la expresión: Π nombre cliente (σ ciudad cliente= Peregrinos (cliente)) Es válida porque el resultado de σ ciudad cliente= Peregrinos (cliente) es otra relación, que sirve como argumento de la proyección Π. En general, las operaciones del álgebra relacional pueden componerse para formar una expresión del álgebra relacional, de forma equivalente a la composición de operaciones aritméticas (como +,, y ) para formar expresiones aritméticas.

4 2 EL ÁLGEBRA RELACIONAL La operación unión La operación Unión es equivalente a la unión expresada en teoría de conjuntos, e incluso se representa con el mismo símbolo, se debe asegurar que las uniones se realicen entre relaciones compatibles. Para que una operación unión r s sea válida deben cumplirse dos condiciones: 1. Las relaciones r y s deben ser de la misma aridad. Es decir, deben tener el mismo número de atributos. 2. Los dominios de los atributos i-ésimos de r y de s deben ser iguales para todo i La operación diferencia de conjuntos La operación diferencia de conjuntos, denotada por, permite buscar las tuplas que estén en una relación pero no en la otra. La expresión r s da como resultado una relación que contiene las tuplas que están en r pero no en s. Como en el caso de la operación unión, hay que asegurarse de que las diferencias de conjuntos se realicen entre relaciones compatibles La operación producto cartesiano La operación producto cartesiano se denota por una aspa ( ), y permite combinar información de cualesquiera dos relaciones. Sea r = r 1 r 2. El esquema de r contendrá todos los atributos de r 1 y de r 2. Qué tuplas aparecerán en r?. Se crea una tupla en r para todas y cada una de las posibles combinaciones entre las tuplas de r 1 y las de r 2. La relación r es, por tanto, una relación de gran tamaño. Si la relación r 1 contiene n tuplas y la relación r 2 contiene m, en r habrá n m tuplas. Dado que el mismo nombre de atributo puede aparecer tanto en r 1 como en r 2, hay que crear un esquema de denominaciones para distinguir entre ambos atributos. En este caso se logra adjuntando al atributo el nombre de la relación de la que proviene originalmente La operación renombramiento ρ A diferencia de las relaciones de la base de datos, los resultados de las expresiones de álgebra relacional no tienen un nombre que se pueda utilizar para referirse a ellas. Resulta útil poder ponerles nombre; el operador renombramiento, denotado por la letra griega rho minúscula (ρ), permite realizar esta tarea. Supóngase que una expresión del álgebra relacional E tiene aridad n. Por tanto, la expresión ρx(a 1, A 2,..., A n )(E) devuelve el resultado de la expresión E, con el nombre x y con los atributos con el nombre cambiado a A 1, A 2,..., A n

5 3 OTRAS OPERACIONES 5 3. Otras operaciones Las operaciones fundamentales del álgebra relacional son suficientes para expresar cualquier consulta del álgebra relacional. Sin embargo, algunas consultas habituales resultan complicadas. Por ello se definen otras operaciones que, si bien no añaden potencia al álgebra, simplifican las consultas La operación intersección de conjuntos La intersección de conjuntos se representa con el símbolo. Sea r = r 1 r 2, entonces toda tupla contenida en r estará también contenida en r 1 y r 2 La intersección de conjuntos no es una operación fundamental, ya que r s r (r s) La operación reunión natural Generalmente, las consultas que implican un producto cartesiano incluyen un operador selección sobre el resultado del producto cartesiano. La reunión natural es una operación binaria que permite combinar ciertas selecciones y un producto cartesiano en una sola operación. Se denota por el símbolo de la reunión. La operación reunión natural forma un producto cartesiano de sus dos argumentos, realiza una selección forzando la igualdad de los atributos que aparecen en ambos esquemas de relación y, finalmente, elimina los atributos duplicados. La operación reunión zeta es una extensión de la operación reunión natural, que permite combinar una selección cualquiera y un producto cartesiano en una sola operación. Considérense las relaciones r(r) y s(s), y sea θ un predicado de los atributos del esquema R S. La operación reunión zeta r θ s se define así: La operación división r θ s = σ θ (r s) La operación división se denota por, y resulta adecuada para las consultas que incluyen la expresión para todos Formalmente, sean r(r) y s(s) relaciones tal que S R, es decir, que todos los atributos del esquema S están también en el esquema R. La relación r s es una relación del esquema R S (es decir, del esquema que contiene todos los atributos del esquema R que no están en el esquema S). Una tupla t está en r s si y sólo si se cumplen estas dos condiciones: 1. t está en Π R S (r) 2. Por cada tupla t s s hay una tupla t r r que cumple las dos condiciones siguientes: a) t r [S] = t s [S] b) t r [R S] = t

6 4 OPERACIONES DEL ÁLGEBRA RELACIONAL EXTENDIDA La operación asignación La operación asignación se representa con el símbolo y nos permite escribir una expresión del álgebra relacional por partes, asignando el resultado de expresiones a una relación temporal. Con la operación asignación se pueden escribir las consultas como programas secuenciales consistentes en una serie de asignaciones seguida de una última expresión, cuyo valor se muestra como resultado. 4. Operaciones del álgebra relacional extendida Las operaciones básicas del álgebra relacional se han ampliado de varias maneras. Una ampliación sencilla es permitir operaciones aritméticas como parte de la proyección. Una ampliación importante es permitir operaciones de agregación, como el cálculo de la suma de los elementos de un conjunto, o su media. Otra ampliación importante es la operación reunión externa, que permite a las expresiones del álgebra relacional trabajar con los valores nulos que modelan la información que falta Proyección generalizada La operación proyección generalizada amplía la operación proyección permitiendo que se utilicen funciones aritméticas en la lista de proyección. La operación proyección generalizada tiene la forma: Π F1,F 2,...,F n (E) donde E es cualquier expresión del álgebra relacional y F 1, F 2,..., F n son expresiones aritméticas. De forma trivial, la expresión aritmética puede ser simplemente un atributo o una constante Funciones de agregación Las funciones de agregación son funciones que toman una colección de valores y devuelven como resultado un único valor. Las funciones de agregación más habituales son sum (Suma), avg (Media aritmética), count (número de elementos), min y max (Mínimo y máximo, respectivamente). En la siguiente tabla se muestran algunos ejemplos de funciones de agregación. Conjunto de valores función resultado {1, 1, 3, 4, 4, 11} sum 24 {1, 1, 3, 4, 4, 11} avg 4 {1, 1, 3, 4, 4, 11} count 6 {1, 1, 3, 4, 4, 11} min 1 {1, 1, 3, 4, 4, 11} max 11 es La expresión del álgebra relacional para el uso de una función de agregación G f (a) (R)

7 4 OPERACIONES DEL ÁLGEBRA RELACIONAL EXTENDIDA 7 Donde f es la función de agregación, R es la relación considerada, y a es el atributo a utilizar. Por ejemplo: G sum(sueldo) (empleado) Es una relación con un único atributo, que contiene una sola fila con un valor correspondiente a la suma de los sueldos de todos los empleados. Las colecciones en las que operan las funciones de agregación pueden tener valores repetidos; el orden en el que aparezcan los valores no tiene importancia. Pero hay casos en los que se desea borrar los valores repetidos antes de calcular la función de agregación. Para ello hay que utilizar los mismos nombres de funciones que antes, con la cadena de texto -distinct al final del nombre de la función (por ejemplo, count-distinct) Es posible dividir una relación en grupos, y aplicar las funciones de agregación de forma independiente en cada grupo. La sintaxis sería así: G 1,G 2,...,G n G F1 (a 1 ),F 2 (a 2 ),...,F m (a m )(E) donde E es cualquier expresión del álgebra relacional; G 1, G 2,..., G n constituyen una lista de atributos que indican cómo se realiza la agrupación, cada F i es una función de agregación y cada A i es el nombre de un atributo. La relación resultante consistirá en las tuplas con los atributos usado para agrupar, más los resultado de las funciones de agregación Reunión externa La operación reunión externa es una ampliación de la operación reunión para trabajar con la información que falta. Esta operación tiene tres formas diferentes: reunión externa por la izquierda, denotada por, reunión externa por la derecha, denotada por y reunión externa completa, denotada por. La reunión externa por la izquierda ( ) toma todas las tuplas de la relación de la izquierda que no coincidan con ninguna tupla de la relación de la derecha, las rellena con valores nulos en todos los demás atributos de la relación de la derecha y las añade al resultado de la reunión natural. La reunión externa por la derecha ( ) es simétrica de la reunión externa por la izquierda. La reunión externa completa ( ) realiza estas dos operaciones, rellenando las tuplas de la relación de la izquierda que no coincidan con ninguna tupla de la relación de la derecha y las tuplas de la relación de la derecha que no coincidan con ninguna tupla de la relación de la izquierda, y añadiéndolas al resultado de la reunión Valores nulos A menudo hay varias formas de tratar los valores nulos. Las operaciones y las comparaciones con valores nulos se deberían evitar siempre que sea posible. Dado que el valor especial nulo indica valor desconocido o no existente, cualquier operación aritmética que incluya valores nulos devolverá un valor

8 5 MODIFICACIÓN DE LA BASE DE DATOS 8 nulo. De manera similar, cualquier comparación (como <,, >, y ) que incluya un valor nulo se evalúa al nuevo valor lógico desconocido. Las operaciones lógicas tratan los valores desconocidos tal y como se muestra en la siguiente tabla. op1 operador op2 resultado cierto desconocido desconocido falso desconocido falso desconocido desconocido desconocido cierto desconocido cierto falso desconocido desconocido desconocido desconocido desconocido desconocido desconocido A la hora de efectuar operaciones en el álgebra relacional que impliquen valores nulos, hay que tener en cuenta que las operaciones de proyección, unión, intersección y diferencia tratan los valores nulos como cualquier otro valor al eliminar duplicados. Si dos tuplas del resultado de alguna de estas operaciones son exactamente iguales, y ambos tienen nulos en los mismos campos, se tratan como duplicados. La decisión es un tanto arbitraria porque sin saber cuál es el valor real no se sabe si los dos valores nulos son duplicados o no. Para las funciones de agregación, hay que tener en cuenta que cuando hay nulos en los atributos agregados, la operación borra los valores nulos del resultado antes de aplicar la agregación. Si el multiconjunto resultante está vacío, el resultado agregado será nulo. Obsérvese que el tratamiento de los valores nulos aquí es diferente que en las expresiones aritméticas ordinarias Otras operaciones adicionales Ampliacion α. Es una operación unaria, que toma una relación R y crea una relación resultante que tiene un atributo más que la original, cuyos valor se obtienen evaluando una expresión de cálculo escalar. La sintaxis de la operación es: Rα calculo escalar (nombre atributo) Resumen Ω. Permite incorporar operaciones de agregados (cuenta, suma, media, máximo, mínimo, etc). A partir de una relación R y de una lista de sus atributos, obtiene otra relación en cuya cabecera aparecen los atributos de R especificados y un nuevo atributo, con el nombre indiciado, siendo los valores de este último el resultado de evaluar la expresión de agregados. La sintaxis de la operación es: R(lista atributos)ω operaciones agregadas (nombre atributo) 5. Modificación de la base de datos En este apartado se abordará la manera de insertar, borrar o modificar información de la base de datos.

9 6 VISTAS Borrado Las solicitudes de borrado se expresan básicamente igual que las consultas. Sin embargo, en lugar de mostrar las tuplas al usuario, se eliminan de la base de datos las tuplas seleccionadas. Sólo se pueden borrar tuplas enteras; no se pueden borrar valores de atributos concretos. En el álgebra relacional los borrados se expresan mediante r r E donde r es una relación y E es una consulta del álgebra relacional Inserción Para insertar datos en una relación hay que especificar la tupla que se va a insertar o escribir una consulta cuyo resultado sea un conjunto de tuplas que vayan a insertarse. El valor de los atributos de las tuplas insertadas deben ser miembros del dominio de cada atributo y las tuplas insertadas deben ser de la aridad correcta. En el álgebra relacional las inserciones se expresan mediante r r E donde r es una relación y E es una consulta del álgebra relacional Actualización Puede que, en algunas situaciones, se desee modificar un valor de una tupla sin modificar todos los valores de la tupla. Se puede utilizar el operador proyección generalizada para realizar esta tarea: r Π F1,F 2,...,F n (r) donde cada F i es o bien el i-ésimo atributo de r, si el i-ésimo atributo no está actualizado, o una expresión que sólo implique constantes y los atributos de r, y que de el nuevo valor del atributo. Si se desea seleccionar varias tuplas de r y sólo actualizar esas mismas tuplas, se puede utilizar la expresión siguiente, donde P denota la condición de selección que escoge las tuplas que hay que actualizar: r Π F1,F 2,...,F n (σ P (r)) (r σ P (r)) 6. Vistas En los ejemplos propuestos hasta ahora se ha operado en el nivel del modelo lógico. Es decir, se ha asumido que el conjunto de relaciones que se da son las relaciones reales guardadas en la base de datos. No es deseable que todos los usuarios puedan ver la totalidad del modelo lógico. La seguridad pueden exigir que algunos datos queden ocultos para determinados usuarios. O puede que se desee crear un conjunto personalizado de

10 7 EL CÁLCULO RELACIONAL DE TUPLAS 10 relaciones que se adapte mejor que el modelo lógico a la intuición de un usuario concreto. Las relaciones que no forman parte del modelo lógico pero se hacen visibles a los usuarios como relaciones virtuales se denominan vistas Definición de vistas Las vistas se definen utilizando la instrucción create view. Para definir una vista hay que darle un nombre e indicar la consulta que la va a calcular. La forma de la instrucción create view es create view v as < expresión de consulta > Una vez se ha definido una vista se puede utilizar su nombre para hacer referencia a la relación virtual, y podrá usarse como cualquier otra relación siempre y cuando no se ejecuten sobre ella operaciones de actualización Actualizaciones mediante vistas y valores nulos las modificaciones de la base de datos expresadas en términos de vistas son problemáticas, porque deben traducirse en modificaciones de las relaciones reales en el modelo lógico de la base de datos, y puede ser que no dispongamos de la información necesaria para hacerlo.. Debido a esto generalmente no se permiten las modificaciones en las relaciones de vistas excepto en casos limitados Vistas definidas utilizando otras vistas las relaciones de vistas pueden aparecer en cualquier lugar en que pueda hacerlo el nombre de una relación. Por tanto, se pueden utilizar vistas en la expresión que define otra vista. La expansión de vistas es una manera de definir el significado de las vistas definidas en términos de otras vistas. El procedimiento asume que las definiciones de vistas no son recursivas; es decir, ninguna vista se usa en su propia definición, bien directa o indirectamente a través de otras definiciones de vistas. 7. El cálculo relacional de tuplas Cuando escribimos una expresión del álgebra relacional proporcionamos una serie de procedimientos que generan la respuesta a la consulta. El cálculo relacional de tuplas, en cambio, es un lenguaje de consulta no procedimental. Describe la información deseada sin dar un procedimiento específico para obtenerla. Las consultas se expresan en el cálculo relacional de tuplas como {t P(t)} Es decir, son el conjunto de todas las tuplas tales que el predicado P es cierto para t. Siguiendo la notación utilizada previamente, se utiliza t[a] para denotar el valor de la tupla t en el atributo A y t R r para denotar que la tupla t está en la relación r.

11 7 EL CÁLCULO RELACIONAL DE TUPLAS Consultas de ejemplo Supóngase que se desea averiguar nombre-sucursal, número-préstamo e importe de los préstamos superiores a {t t prestamo t[importe] > 1200} Supóngase que sólo se desea obtener el atributo número préstamo, en vez de todos los atributos de la relación préstamo. Para escribir esta consulta en el cálculo relacional de tuplas hay que escribir una expresión para una relación del esquema (número préstamo). Se necesitan las tuplas de (número préstamo) tales que hay una tupla en préstamo con el atributo importe > Para expresar esta solicitud hay que utilizar el constructor existe de la lógica matemática. La notación t r(q(t)) se lee existe una tupla t en la relación r tal que el predicado Q(t) es verdadero. Utilizando esta notación se puede escribir la consulta Averiguar el número de préstamo de todos los préstamos por importe superior a como {t s prestamo(t[numeroprestamo] = s[numeroprestamo] s[importe] > 1200)} El truco está en que la variable tupla t sólo se define para el atributo número préstamo, dado que es el único atributo para el que se especifica una condición. Por tanto, el resultado es una relación de (número-préstamo). Otro ejemplo, considerando dos relaciones: Averiguar el nombre de todos los clientes que tienen concedido un préstamo en la sucursal de Navacerrada {t s prestatario(t[numeroprestamo] = s[numeroprestamo] u prestamo(u[numeroprestamo] = s[numeroprestamo] u[nombresucursal] = Navacerrada ))} 7.2. Definición formal Las expresiones del cálculo relacional de tuplas son de la forma { t P(t) } donde P es una fórmula. En una fórmula pueden aparecer varias variables tupla. Se dice que una variable tupla es una variable libre a menos que esté cuantificada mediante o. Por tanto, en: t prestamo s cliente(t[nombresucursal] = s[nombresucursal]) t es una variable libre. La variable tupla s se denomina variable ligada. Las fórmulas de cálculo relacional de tuplas se construyen con átomos. Los átomos tienen una de las formas siguientes: 1. s r, siendo s una variable tupla y r una relación (no se permite el uso de ).

12 7 EL CÁLCULO RELACIONAL DE TUPLAS s[x] Θ u[y], donde s y u son variables tupla, x es un atributo de s, y es un atributo de u, y Θ es un operador de comparación (=,, <,, >, ). Es necesario que los atributos x e y tengan dominios comparables mediante Θ. 3. s[x] Θ c, donde s es una variable tupla, x es un atributo de s, Θ es un operador de comparación y c es una constante en el dominio de x. Las fórmulas se construyen a partir de los átomos utilizando las reglas siguientes: Un átomo es una fórmula. si P 1 es una fórmula, también lo son P 1 y (P 1 ) si P 1 y P 2 son fórmulas, también lo son P 1 P 2, P 1 P 2 y P 1 P 2 Si P1(s) es una fórmula que contiene una variable tupla libre s, y r es una relación, entonces s r(p 1 (s)) y s r(p 1 (s)) también son fórmulas. Igual que en el álgebra relacional, se pueden escribir expresiones equivalentes de diferentes maneras. En el cálculo relacional de tuplas estas equivalencias incluyen las tres reglas siguientes: 1. P 1 P 2 es equivalente a ( (P 1 ) (P 2 )) 2. t r(p 1 (t)) es equivalente a t r( P 1 (t)) 3. P 1 P 2 es equivalente a (P 1 ) P Seguridad de las expresiones Las expresiones del cálculo relacional de tuplas pueden generar relaciones infinitas. Supóngase que se escribió la expresión {t (t préstamo)} Hay infinitas tuplas que no están en préstamo. Para ayudar a definir las restricciones del cálculo relacional de tuplas se introduce el concepto de dominio de una fórmula relacional de tuplas, P. De manera intuitiva, el dominio de P, denotado por dom(p), es el conjunto de todos los valores a los que P hace referencia, ya sea de forma explícita o implícita. Por ejemplo, el dominio de t préstamo t[importe] > 1200 es el conjunto de todos los valores de préstamo más el valor Además, dom( (t préstamo)) es el conjunto de todos los valores que aparecen en préstamo, dado que la relación préstamo se menciona en la expresión. Se dice que una expresión {t P(t)} es segura si todos los valores que aparecen en el resultado son valores de dom(p).

13 8 EL CÁLCULO RELACIONAL DE DOMINIOS Potencia expresiva de los lenguajes El cálculo relacional de tuplas restringido a expresiones seguras es equivalente en potencia expresiva al álgebra relacional básica (sin los operadores relacionales extendidos tales como la proyección generalizada G y las operaciones de reunión externa). 8. El cálculo relacional de dominios Hay una segunda forma de cálculo relacional denominada cálculo relacional de dominios. Esta forma utiliza variables de dominio que toman sus valores del dominio de un atributo, en vez de tomarlos de una tupla completa. El cálculo relacional de dominios, sin embargo, se halla estrechamente relacionado con el cálculo relacional de tuplas Definición formal Las expresiones del cálculo relacional de dominios son de la forma {< x 1, x 2,..., x n > P(x 1, x 2,..., x n )} Donde x 1, x 2,..., x n representan las variables de dominio y P representa una fórmula compuesta de átomos, como en el cálculo relacional de tuplas. Los átomos del cálculo relacional de dominios tienen una de las formas siguientes: 1. < x 1, x 2,..., x n > r, donde r es una relación con n atributos y x 1, x 2,..., x n son variables de dominio o constantes de dominio. 2. x Θ y, donde x a y son variables de dominio y Θ es un operador de comparación (=,, <,, >, ). Los dominios de x e y deben poder compararse mediante Θ. 3. x Θ c, donde x es una variable de dominio, c una constante del dominio de x y Θ es un operador de comparación Las fórmulas se construyen a partir de los átomos utilizando las reglas siguientes: 1. Un átomo es una fórmula. 2. Si P 1 es una fórmula, también lo son P 1 y (P 1 ) 3. Si P 1 y P 2 son fórmulas, también lo son P 1 P 2, P 1 P 2 y P 1 P Si P(s) es una fórmula en x, siendo x una variable de dominio, entonces x(p(x)) y x(p(x)) también son fórmulas.

14 8 EL CÁLCULO RELACIONAL DE DOMINIOS Seguridad de las expresiones En el cálculo relacional de dominios también es posible escribir expresiones que pueden generar relaciones. Se dice que la expresión {< x 1, x 2,..., x n > P(x 1, x 2,..., x n )} es segura si se cumplen las siguientes condiciones: 1. Todos los valores que aparecen en las tuplas de la expresión son valores de dom(p). 2. Para cada subfórmula existe de la forma x(p(x)), la subfórmula es cierta si y sólo si hay un valor x en dom(p) tal que P(x) sea verdadero. 3. Para cada subfórmula para todo de la forma x(p(x)), la subfórmula es cierta si y sólo si P(x) es verdadera para todos los valores de x de dom(p). El propósito de las reglas adicionales es asegurar que se puedan probar las subfórmulas para todo y existe sin tener que probar infinitas posibilidades Potencia expresiva de los lenguajes Cuando el cálculo relacional de dominios se restringe a expresiones seguras es equivalente en potencia expresiva al cálculo relacional de tuplas restringido a expresiones seguras. Dado que se observó anteriormente que el cálculo relacional de tuplas restringido es equivalente al álgebra relacional, los tres lenguajes siguientes son equivalentes: El álgebra relacional básica (sin las operaciones extendidas) El cálculo relacional de tuplas (restringido a expresiones seguras) El cálculo relacional de dominios (restringido a expresiones seguras)

Operaciones en el Modelo Relacional. Relacional. Relacional. Índice. Lenguajes de Consulta

Operaciones en el Modelo Relacional. Relacional. Relacional. Índice. Lenguajes de Consulta Operaciones en el Modelo Relacional Bases de Datos Ingeniería a Técnica T en Informática de Sistemas El interés de los usuarios de las bases de datos se suele centrar en realizar consultas (contestar a

Más detalles

OPERACIONES FUNDAMENTALES DEL ÁLGEBRA RELACIONAL. Bases de Datos Ingeniería de Sistemas y Computación Universidad Nacional de Colombia 2007

OPERACIONES FUNDAMENTALES DEL ÁLGEBRA RELACIONAL. Bases de Datos Ingeniería de Sistemas y Computación Universidad Nacional de Colombia 2007 OPERACIONES FUNDAMENTALES DEL ÁLGEBRA RELACIONAL Bases de Datos Ingeniería de Sistemas y Computación Universidad Nacional de Colombia 2007 Álgebra Relacional Álgebra Relacional El álgebra relacional es

Más detalles

Álgebra Relacional. Unidad 5

Álgebra Relacional. Unidad 5 Álgebra Relacional Unidad 5 Definición Álgebra es un sistema matemático que está formado por: Operandos. Valores o variables con los cuáles se pueden construir nuevos valores o variables Operadores. Símbolos

Más detalles

Tablas. Estas serán las tablas que usaremos en la mayoría de ejemplos. Empleado

Tablas. Estas serán las tablas que usaremos en la mayoría de ejemplos. Empleado Álgebra Relacional Un álgebra es un sistema matemático constituido por Operandos: objetos (valores o variables) desde los cuales nuevos objetos pueden ser construidos. Operadores: símbolos que denotan

Más detalles

Cálculo Relacional. Bibliografía: Fundamentos de bases de datos Korth, Silberschatz

Cálculo Relacional. Bibliografía: Fundamentos de bases de datos Korth, Silberschatz Cálculo Relacional Bibliografía: Fundamentos de bases de datos Korth, Silberschatz Cálculo Relacional de Tuplas Es un lenguaje de consulta no procedimental Describe la información deseada sin dar un procedimiento

Más detalles

Consultas con combinaciones

Consultas con combinaciones UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden

Más detalles

UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES. Xochitl Clemente Parra Armando Méndez Morales

UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES. Xochitl Clemente Parra Armando Méndez Morales UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Práctica preliminar Crear la siguiente base de datos de prácticas

Más detalles

Consulta y manipulación de datos. El lenguaje SQL

Consulta y manipulación de datos. El lenguaje SQL Bloque 2 Consulta y manipulación de datos. El lenguaje SQL Como ya hemos visto en el bloque anterior, una base de datos relacional consiste en un conjunto de tablas, a cada una de las cuales se le asigna

Más detalles

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas. El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los

Más detalles

CASO PRÁCTICO DISTRIBUCIÓN DE COSTES

CASO PRÁCTICO DISTRIBUCIÓN DE COSTES CASO PRÁCTICO DISTRIBUCIÓN DE COSTES Nuestra empresa tiene centros de distribución en tres ciudades europeas: Zaragoza, Milán y Burdeos. Hemos solicitado a los responsables de cada uno de los centros que

Más detalles

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros La sentencia INSERT permite agregar nuevas filas de datos a las tablas existentes. Está sentencia

Más detalles

Módulo 9 Sistema matemático y operaciones binarias

Módulo 9 Sistema matemático y operaciones binarias Módulo 9 Sistema matemático y operaciones binarias OBJETIVO: Identificar los conjuntos de números naturales, enteros, racionales e irracionales; resolver una operación binaria, representar un número racional

Más detalles

El modelo relacional

El modelo relacional El modelo relacional El modelo relacional constituye una alternativa para la organización y representación de la información que se pretende almacenar en una base de datos. Se trata de un modelo teórico

Más detalles

4. Modelo Relacional: Manipulación de los datos.

4. Modelo Relacional: Manipulación de los datos. Modelo Relacional: Manipulación de los datos. 54 4. Modelo Relacional: Manipulación de los datos. 4.1. Lenguaje de procedimiento: álgebra relacional Los lenguajes de procedimientos para consultar bases

Más detalles

Modelos y Bases de Datos

Modelos y Bases de Datos Modelos y Bases de Datos MODELOS Y BASES DE DATOS 1 Sesión No. 10 Nombre: Álgebra Relacional Contextualización En qué consiste el álgebra relacional? Se ha planteado hasta el momento cada uno de los procesos

Más detalles

Definición 1.1.1. Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas.

Definición 1.1.1. Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas. Tema 1 Matrices Estructura del tema. Conceptos básicos y ejemplos Operaciones básicas con matrices Método de Gauss Rango de una matriz Concepto de matriz regular y propiedades Determinante asociado a una

Más detalles

BASES DE DATOS TEMA 3. MODELO RELACIONAL

BASES DE DATOS TEMA 3. MODELO RELACIONAL Contenidos generales BASES DE DATOS TEMA 3. MODELO RELACIONAL * Conceptos del modelo relacional * Notación del modelo relacional * Lenguajes de consulta - Algebra relacional - Cálculo relacional Motivación

Más detalles

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo. CONSULTAS CON SQL 1. Qué es SQL? Debido a la diversidad de lenguajes y de bases de datos existentes, la manera de comunicar entre unos y otras sería realmente complicada a gestionar de no ser por la existencia

Más detalles

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 9. Reglas de Integridad 1.- Introducción. 2.- Claves Primarias. 3.- Regla de Integridad de Entidades. 4.- Claves Ajenas. 5.- Regla de Integridad

Más detalles

TEMA 8.- DISEÑO TEORICO DE BASES DE DATOS RELACIONALES. 1. TEORÍA DE LAS DEPENDENCIAS FUNCIONALES

TEMA 8.- DISEÑO TEORICO DE BASES DE DATOS RELACIONALES. 1. TEORÍA DE LAS DEPENDENCIAS FUNCIONALES TEMA 8.- DISEÑO TEORICO DE BASES DE DATOS RELACIONALES. Teoría de las Dependencias Funcionales. Teoría de la Normalización. Formas Normales. Conclusiones. 1. TEORÍA DE LAS DEPENDENCIAS FUNCIONALES Las

Más detalles

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 8. Elementos Básicos

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 8. Elementos Básicos FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 8. Elementos Básicos 1.- Ejemplo Introductorio. 2.- Dominios. 3.- Relaciones. 4.- Bases de Datos Relacionales. (Capítulo 11 del Date) EJEMPLO

Más detalles

Ecuaciones de primer grado con dos incógnitas

Ecuaciones de primer grado con dos incógnitas Ecuaciones de primer grado con dos incógnitas Si decimos: "las edades de mis padres suman 120 años", podemos expresar esta frase algebraicamente de la siguiente forma: Entonces, Denominamos x a la edad

Más detalles

LiLa Portal Guía para profesores

LiLa Portal Guía para profesores Library of Labs Lecturer s Guide LiLa Portal Guía para profesores Se espera que los profesores se encarguen de gestionar el aprendizaje de los alumnos, por lo que su objetivo es seleccionar de la lista

Más detalles

Datos del autor. Nombres y apellido: Germán Andrés Paz. Lugar de nacimiento: Rosario (Código Postal 2000), Santa Fe, Argentina

Datos del autor. Nombres y apellido: Germán Andrés Paz. Lugar de nacimiento: Rosario (Código Postal 2000), Santa Fe, Argentina Datos del autor Nombres y apellido: Germán Andrés Paz Lugar de nacimiento: Rosario (Código Postal 2000), Santa Fe, Argentina Correo electrónico: germanpaz_ar@hotmail.com =========0========= Introducción

Más detalles

Estructuras algebraicas

Estructuras algebraicas Tema 2 Estructuras algebraicas básicas 2.1. Operación interna Definición 29. Dados tres conjuntos A, B y C, se llama ley de composición en los conjuntos A y B y resultado en el conjunto C, y se denota

Más detalles

1. DML. Las subconsultas

1. DML. Las subconsultas 1.1 Introducción 1. DML. Las subconsultas Una subconsulta es una consulta que aparece dentro de otra consulta o subconsulta en la lista de selección, en la cláusula WHERE o HAVING, originalmente no se

Más detalles

Para representar los conjuntos, los elementos y la relación de pertenencia, mediante símbolos, tendremos en cuenta las siguientes convenciones:

Para representar los conjuntos, los elementos y la relación de pertenencia, mediante símbolos, tendremos en cuenta las siguientes convenciones: 2. Conjuntos 2.1 Introducción El concepto de conjunto, de singular importancia en la ciencia matemática y objeto de estudio de una de sus disciplinas más recientes, está presente, aunque en forma informal,

Más detalles

Tema 3. Medidas de tendencia central. 3.1. Introducción. Contenido

Tema 3. Medidas de tendencia central. 3.1. Introducción. Contenido Tema 3 Medidas de tendencia central Contenido 31 Introducción 1 32 Media aritmética 2 33 Media ponderada 3 34 Media geométrica 4 35 Mediana 5 351 Cálculo de la mediana para datos agrupados 5 36 Moda 6

Más detalles

ANÁLISIS DE DATOS NO NUMERICOS

ANÁLISIS DE DATOS NO NUMERICOS ANÁLISIS DE DATOS NO NUMERICOS ESCALAS DE MEDIDA CATEGORICAS Jorge Galbiati Riesco Los datos categóricos son datos que provienen de resultados de experimentos en que sus resultados se miden en escalas

Más detalles

Álgebra Relacional. Dra. Amparo López Gaona () Posgrado en Ciencia e Ingeniería de la Compu. Fac. Ciencias, UNAM / 1

Álgebra Relacional. Dra. Amparo López Gaona () Posgrado en Ciencia e Ingeniería de la Compu. Fac. Ciencias, UNAM / 1 Dra. Amparo López Gaona tación Fac. Ciencias, UNAM Álgebra relacional Conjunto de operaciones usadas para manipular relaciones. Estas operaciones toman relaciones como operandos y regresan relaciones que

Más detalles

LAS SUBCONSULTAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

LAS SUBCONSULTAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE LAS SUBCONSULTAS SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE LAS SUBCONSULTAS Una subconsulta es una consulta que aparece dentro de otra consulta o subconsultas, en

Más detalles

3. Modelo relacional: Estructura e integridad.

3. Modelo relacional: Estructura e integridad. Modelo relacional: Estructura e integridad 47 3. Modelo relacional: Estructura e integridad. 3.1. Introducción. El modelo de datos relacional es posterior a los modelos jerárquicos y de red. Nació como

Más detalles

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases.

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases. BASES Y DIMENSIÓN Definición: Base. Se llama base de un espacio (o subespacio) vectorial a un sistema generador de dicho espacio o subespacio, que sea a la vez linealmente independiente. β Propiedades

Más detalles

Tecnología de la Información y la Comunicación. Base de datos. Consultas - 2007 -

Tecnología de la Información y la Comunicación. Base de datos. Consultas - 2007 - Tecnología de la Información y la Comunicación Base de datos Consultas - 2007 - Profesores del área Informática: Guillermo Storti Gladys Ríos Gabriel Campodónico Consultas Se utilizan consultas para ver,

Más detalles

Algebra Relacional Jos e Ram on Param a Gab ıa

Algebra Relacional Jos e Ram on Param a Gab ıa Álgebra Relacional Ramón Paramá Gabía Capítulo 4 Algebra relacional Ya hemos visto la estructura y las restricciones del modelo relacional, ahora pasamos a abordar la parte del modelo relacional que nos

Más detalles

SISTEMAS DE NUMERACIÓN. Sistema decimal

SISTEMAS DE NUMERACIÓN. Sistema decimal SISTEMAS DE NUMERACIÓN Sistema decimal Desde antiguo el Hombre ha ideado sistemas para numerar objetos, algunos sistemas primitivos han llegado hasta nuestros días, tal es el caso de los "números romanos",

Más detalles

Bases de datos en Excel

Bases de datos en Excel Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Bases de datos en Excel Hojas de cálculo Tema 5 Bases de datos en Excel Hasta ahora hemos usado Excel básicamente para realizar cálculos

Más detalles

Los números racionales

Los números racionales Los números racionales Los números racionales Los números fraccionarios o fracciones permiten representar aquellas situaciones en las que se obtiene o se debe una parte de un objeto. Todas las fracciones

Más detalles

UNIDAD I: LÓGICA PROPOSICIONAL

UNIDAD I: LÓGICA PROPOSICIONAL UNIDAD I: LÓGICA PROPOSICIONAL ASIGNATURA: INTRODUCCIÓN A LA COMPUTACIÓN CARRERAS: LICENCIATURA Y PROFESORADO EN CIENCIAS DE LA COMPUTACIÓN DEPARTAMENTO DE INFORMÁTICA FACULTAD DE CIENCIAS FÍSICO MATEMÁTICA

Más detalles

ESQUEMA DE BASE DE DATOS ATROPELLOS

ESQUEMA DE BASE DE DATOS ATROPELLOS ESQUEMA DE BASE DE DATOS ATROPELLOS PEATONES (dni: domdni, nombre: domnombre, edad: domedad) CP(dni) COCHES (matrícula: dommat, marca: domcad, modelo: domcad) CP(matrícula) ATROPELLADOS (dni: domdni, matrícula:

Más detalles

Codd propuso estos tres lenguajes como base teórica de cualquier lenguaje que quisiera cumplir con los requisitos formales del modelo.

Codd propuso estos tres lenguajes como base teórica de cualquier lenguaje que quisiera cumplir con los requisitos formales del modelo. 16/05/2012 1 Todo modelo de datos debe definir un lenguaje de definición de datos para crear las estructuras donde se almacenará la información y un lenguaje de manipulación de datos con el que acceder

Más detalles

Capítulo 12: Indexación y asociación

Capítulo 12: Indexación y asociación Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación

Más detalles

Guía N 1: Fundamentos básicos(i)

Guía N 1: Fundamentos básicos(i) 1 Guía N 1: Fundamentos básicos(i) Objetivos Generales: Ver una breve descripción de las capacidades más comunes de Excel Objetivos específicos: Descripción de los elementos de un libro: Hojas, iconos,

Más detalles

SISTEMAS DE COORDENADAS SISTEMA COORDENADO UNIDIMENSIONAL

SISTEMAS DE COORDENADAS SISTEMA COORDENADO UNIDIMENSIONAL SISTEMAS DE COORDENADAS En la vida diaria, nos encontramos con el problema de ordenar algunos objetos; de tal manera que es necesario agruparlos, identificarlos, seleccionarlos, estereotiparlos, etc.,

Más detalles

La nueva criba de Eratóstenes Efraín Soto Apolinar 1 F.I.M.E. U.A.N.L. San Nicolás, N.L. México. efrain@yalma.fime.uanl.mx

La nueva criba de Eratóstenes Efraín Soto Apolinar 1 F.I.M.E. U.A.N.L. San Nicolás, N.L. México. efrain@yalma.fime.uanl.mx La nueva criba de Eratóstenes Efraín Soto Apolinar 1 F.I.M.E. U.A.N.L. San Nicolás, N.L. México. efrain@yalma.fime.uanl.mx Resumen Se dan algunas definiciones básicas relacionadas con la divisibilidad

Más detalles

Temario. Índices simples Árboles B Hashing

Temario. Índices simples Árboles B Hashing Temario Introducción y fundamentos Introducción a SQL Modelo Entidad / Relación Modelo relacional Diseño relacional: formas normales Consultas Cálculo relacional Álgebra relacional Implementación de bases

Más detalles

TEMA 4. Diseño Lógico de bases de datos relacionales.

TEMA 4. Diseño Lógico de bases de datos relacionales. TEMA 4. Diseño Lógico de bases de datos relacionales. 1. El modelo relacional La teoría formal que constituye los cimientos de los sistemas relacionales se conoce como modelo de datos relacional. Cuando

Más detalles

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL OBJETIVO Mejorar el nivel de comprensión y el manejo de las destrezas del estudiante para utilizar formulas en Microsoft Excel 2010. 1) DEFINICIÓN Una fórmula de Excel es un código especial que introducimos

Más detalles

Apuntes de Matemática Discreta 9. Funciones

Apuntes de Matemática Discreta 9. Funciones Apuntes de Matemática Discreta 9. Funciones Francisco José González Gutiérrez Cádiz, Octubre de 004 Universidad de Cádiz Departamento de Matemáticas ii Lección 9 Funciones Contenido 9.1 Definiciones y

Más detalles

Parámetros con la ventana de selección de usuario, reglas, texto y descomposición (IVE)

Parámetros con la ventana de selección de usuario, reglas, texto y descomposición (IVE) QUÉ SON CONCEPTOS PARAMÉTRICOS? Los conceptos paramétricos de Presto permiten definir de una sola vez una colección de conceptos similares a partir de los cuales se generan variantes o conceptos derivados

Más detalles

DISEÑO DE BASES DE DATOS RELACIONALES

DISEÑO DE BASES DE DATOS RELACIONALES DISEÑO DE BASES DE DATOS RELACIONALES Bases de Datos I MIS. Lizbeth Alejandra Hernández González Introducción El objetivo del diseño de las bases de datos relacionales es la generación de un conjunto de

Más detalles

Relaciones binarias. ( a, b) = ( c, d) si y solamente si a = c y b = d

Relaciones binarias. ( a, b) = ( c, d) si y solamente si a = c y b = d Relaciones binarias En esta sección estudiaremos formalmente las parejas de objetos que comparten algunas características o propiedades en común. La estructura matemática para agrupar estas parejas en

Más detalles

BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES

BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES El modelo relacional se basa en dos ramas de las matemáticas: la teoría de conjuntos y la lógica de predicados de primer orden. El hecho de que

Más detalles

TEMA 5. INTRODUCCIÓN AL MANEJO DE ORIGIN 6.1

TEMA 5. INTRODUCCIÓN AL MANEJO DE ORIGIN 6.1 TEMA 5. INTRODUCCIÓN AL MANEJO DE ORIGIN 6.1!"# 1. Introducción En muchos aspectos, el Origin es muy similar a Excel. Y lo es, más que en su apariencia, en la versatilidad y en las funciones que permite

Más detalles

Los sistemas de numeración se clasifican en: posicionales y no posicionales.

Los sistemas de numeración se clasifican en: posicionales y no posicionales. SISTEMAS NUMERICOS Un sistema numérico es un conjunto de números que se relacionan para expresar la relación existente entre la cantidad y la unidad. Debido a que un número es un símbolo, podemos encontrar

Más detalles

Introducción a la programación orientada a objetos

Introducción a la programación orientada a objetos Introducción a la programación orientada a objetos 1. Introducción a la programación orientada a objetos 2. Las clases 3. El tipo Struct 4. Diferencias entre Class y Struct 5. Pilares de la Programación

Más detalles

Cómo?: Resolviendo el sistema lineal homógeneo que satisfacen las componentes de cualquier vector de S. x4 = x 1 x 3 = x 2 x 1

Cómo?: Resolviendo el sistema lineal homógeneo que satisfacen las componentes de cualquier vector de S. x4 = x 1 x 3 = x 2 x 1 . ESPACIOS VECTORIALES Consideremos el siguiente subconjunto de R 4 : S = {(x, x 2, x 3, x 4 )/x x 4 = 0 x 2 x 4 = x 3 a. Comprobar que S es subespacio vectorial de R 4. Para demostrar que S es un subespacio

Más detalles

2. Entorno de trabajo y funcionalidad en Arquímedes

2. Entorno de trabajo y funcionalidad en Arquímedes 2. Entorno de trabajo y funcionalidad en Arquímedes 2.9. Presupuestos comparativos. Cómo contrastar ofertas... 1 2.9.1. Análisis de los datos del comparativo de presupuestos... 4 2.9.2. Ejemplo de comparativo

Más detalles

Los polinomios. Un polinomio es una expresión algebraica con una única letra, llamada variable. Ejemplo: 9x 6 3x 4 + x 6 polinomio de variable x

Los polinomios. Un polinomio es una expresión algebraica con una única letra, llamada variable. Ejemplo: 9x 6 3x 4 + x 6 polinomio de variable x Los polinomios Los polinomios Un polinomio es una expresión algebraica con una única letra, llamada variable. Ejemplo: 9x 6 3x 4 + x 6 polinomio de variable x Elementos de un polinomio Los términos: cada

Más detalles

Base de datos en Excel

Base de datos en Excel Base de datos en Excel Una base datos es un conjunto de información que ha sido organizado bajo un mismo contexto y se encuentra almacenada y lista para ser utilizada en cualquier momento. Las bases de

Más detalles

SQL (Structured Query Language)

SQL (Structured Query Language) SQL (Structured Query Language) El lenguaje de consulta estructurado o SQL (por sus siglas en inglés Structured Query Language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite

Más detalles

Operación de Microsoft Word

Operación de Microsoft Word Generalidades y conceptos Combinar correspondencia Word, a través de la herramienta combinar correspondencia, permite combinar un documento el que puede ser una carta con el texto que se pretende hacer

Más detalles

Base de datos relacional

Base de datos relacional Base de datos relacional Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo más utilizado en la actualidad para modelar problemas reales y administrar

Más detalles

Unidad II: Diseño de Bases de Datos y el modelo E-R. 2.1 El Proceso de Diseño

Unidad II: Diseño de Bases de Datos y el modelo E-R. 2.1 El Proceso de Diseño Unidad II: Diseño de Bases de Datos y el modelo E-R. 2.1 El Proceso de Diseño El proceso de diseño para una base de datos consta básicamente de 7 pasos, los cuáles se describen en la siguiente imagen.

Más detalles

Ingeniería del Software I Clase de Testing Funcional 2do. Cuatrimestre de 2007

Ingeniería del Software I Clase de Testing Funcional 2do. Cuatrimestre de 2007 Enunciado Se desea efectuar el testing funcional de un programa que ejecuta transferencias entre cuentas bancarias. El programa recibe como parámetros la cuenta de origen, la de cuenta de destino y el

Más detalles

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

En cualquier caso, tampoco es demasiado importante el significado de la B, si es que lo tiene, lo interesante realmente es el algoritmo. Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa

Más detalles

Adaptación al NPGC. Introducción. NPGC.doc. Qué cambios hay en el NPGC? Telf.: 93.410.92.92 Fax.: 93.419.86.49 e-mail:atcliente@websie.

Adaptación al NPGC. Introducción. NPGC.doc. Qué cambios hay en el NPGC? Telf.: 93.410.92.92 Fax.: 93.419.86.49 e-mail:atcliente@websie. Adaptación al NPGC Introducción Nexus 620, ya recoge el Nuevo Plan General Contable, que entrará en vigor el 1 de Enero de 2008. Este documento mostrará que debemos hacer a partir de esa fecha, según nuestra

Más detalles

Universidad Católica del Maule. Fundamentos de Computación Especificación de tipos de datos ESPECIFICACIÓN ALGEBRAICA DE TIPOS DE DATOS

Universidad Católica del Maule. Fundamentos de Computación Especificación de tipos de datos ESPECIFICACIÓN ALGEBRAICA DE TIPOS DE DATOS Especificación algebraica ESPECIFICACIÓN ALGEBRAICA DE TIPOS DE DATOS Un tipo abstracto de datos se determina por las operaciones asociadas, incluyendo constantes que se consideran como operaciones sin

Más detalles

Introducción a la plataforma Moodle Aníbal de la Torre 2006. Plataforma Moodle. Accediendo a los contenidos

Introducción a la plataforma Moodle Aníbal de la Torre 2006. Plataforma Moodle. Accediendo a los contenidos Plataforma Moodle Accediendo a los contenidos Formatos ----------------------------------------------------------------------- 2 Glosarios -----------------------------------------------------------------------

Más detalles

Sistemas de Bases de Datos I. Modelo Lógico Modelo Relacional

Sistemas de Bases de Datos I. Modelo Lógico Modelo Relacional Sistemas de Bases de Datos I Modelo Lógico Modelo Relacional Modelo Lógico Modelo Relacional Esquema Relacional (E- R) Es la representación de un DER mediante tablas. Algebra Relacional Modelo Relacional

Más detalles

1.1. Introducción y conceptos básicos

1.1. Introducción y conceptos básicos Tema 1 Variables estadísticas Contenido 1.1. Introducción y conceptos básicos.................. 1 1.2. Tipos de variables estadísticas................... 2 1.3. Distribuciones de frecuencias....................

Más detalles

Cálculo Relacional. 12/03/07 E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I 1/31. Porqué necesitamos un Lenguaje de Consulta?

Cálculo Relacional. 12/03/07 E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I 1/31. Porqué necesitamos un Lenguaje de Consulta? El Modelo Relacional: Cálculo Relacional 12/03/07 E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I 1/31 Porqué necesitamos un Lenguaje de Consulta? Dos ventajas importantes Menor trabajo realizar

Más detalles

Tema 2. Espacios Vectoriales. 2.1. Introducción

Tema 2. Espacios Vectoriales. 2.1. Introducción Tema 2 Espacios Vectoriales 2.1. Introducción Estamos habituados en diferentes cursos a trabajar con el concepto de vector. Concretamente sabemos que un vector es un segmento orientado caracterizado por

Más detalles

Modelos y Bases de Datos

Modelos y Bases de Datos Modelos y Bases de Datos MODELOS Y BASES DE DATOS 1 Sesión No. 12 Nombre: Lenguaje SQL: Valores Nulos Contextualización Qué más ofrece el lenguaje SQL? Así como te has introducido en el desarrollo de la

Más detalles

Tema 5: Teoría de diseño de Bases de Datos Relacionales.

Tema 5: Teoría de diseño de Bases de Datos Relacionales. Tema 5: Teoría de diseño de Bases de Datos Relacionales. I. Introducción. Fases de diseño de una base de datos. 1. Mod. Conceptual (MERE) -> Mod. Lógico (Relacional). 2. Mod. Lógico (Relacional). En el

Más detalles

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda:

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda: Apuntes de ACCESS Campos de Búsqueda: Los campos de búsqueda permiten seleccionar el valor de un campo de una lista desplegable en lugar de tener que escribirlos. El usuario sólo tiene que elegir un valor

Más detalles

Centro de Capacitación en Informática

Centro de Capacitación en Informática Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.

Más detalles

Operación de Microsoft Excel

Operación de Microsoft Excel Representación gráfica de datos Generalidades Excel puede crear gráficos a partir de datos previamente seleccionados en una hoja de cálculo. El usuario puede incrustar un gráfico en una hoja de cálculo,

Más detalles

http://en.wikipedia.org/wiki/edgar_f._codd

http://en.wikipedia.org/wiki/edgar_f._codd 26/03/2012 1 http://en.wikipedia.org/wiki/edgar_f._codd Codd estableció los fundamentos del modelo relacional en el artículos de 1970 "A Relational Model of Data for Large Shared Data Banks". En adelante,

Más detalles

Charla N 6: Utilidades de Consulta de datos.

Charla N 6: Utilidades de Consulta de datos. 1 Charla N 6: Utilidades de Consulta de datos. Objetivos Generales: La manipulación de los datos organizados en forma de lista, donde la lista relaciones diferentes ocurrencias de una información común,

Más detalles

Diseño de bases de datos Diapositiva 1

Diseño de bases de datos Diapositiva 1 Diseño o de bases de datos Objetivos del Diseño Principios del Diseño de BD Proceso de Diseño Normalización Diseño de Tablas: Claves Relaciones Integridad referencial Convenciones de nomenclatura Diseño

Más detalles

8.1. Introducción... 1. 8.2. Dependencia/independencia estadística... 2. 8.3. Representación gráfica: diagrama de dispersión... 3. 8.4. Regresión...

8.1. Introducción... 1. 8.2. Dependencia/independencia estadística... 2. 8.3. Representación gráfica: diagrama de dispersión... 3. 8.4. Regresión... Tema 8 Análisis de dos variables: dependencia estadística y regresión Contenido 8.1. Introducción............................. 1 8.2. Dependencia/independencia estadística.............. 2 8.3. Representación

Más detalles

Este es un ejemplo muy sencillo, un esquema de empleados que trabajan en proyectos, en una relación muchos a muchos.

Este es un ejemplo muy sencillo, un esquema de empleados que trabajan en proyectos, en una relación muchos a muchos. 28/04/2012 La teoría de la normalización va perdiendo peso con el paso de los años como herramienta de diseño de bases de datos relacionales en favor de modelos de datos más ricos en su representación,

Más detalles

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Unidad I Sistemas numéricos 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS.

Más detalles

SOLUCIÓN CASO GESTIÓN DE PERSONAL I

SOLUCIÓN CASO GESTIÓN DE PERSONAL I SOLUCIÓN CASO GESTIÓN DE PERSONAL I Empezaremos abriendo un nuevo libro de trabajo que podemos guardar como Nóminas e introducimos los datos que nos proporciona el enunciado relativos a coste por hora

Más detalles

La ventana de Microsoft Excel

La ventana de Microsoft Excel Actividad N 1 Conceptos básicos de Planilla de Cálculo La ventana del Microsoft Excel y sus partes. Movimiento del cursor. Tipos de datos. Metodología de trabajo con planillas. La ventana de Microsoft

Más detalles

select nombre from profesores where categoria='aso6';

select nombre from profesores where categoria='aso6'; 1 de 10 17/05/2013 14:00 Lecciones SQL > T11 Conjuntos Operaciones de conjuntos y MySQL Un operador sobre conjuntos combina el resultado de dos sentencias select en un único resultado. Dependiendo del

Más detalles

... Formas alternativas de escribir un texto. Columnas. anfora CAPÍTULO 4

... Formas alternativas de escribir un texto. Columnas. anfora CAPÍTULO 4 CAPÍTULO 4. Formas alternativas de escribir un texto........ Columnas Para fijar columnas se posiciona el Punto de Inserción donde se desee que comiencen las columnas, o bien se selecciona el texto que

Más detalles

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014 Tecnologías en la Educación Matemática jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR 1 Datos Los algoritmos combinan datos con acciones. Los datos de entrada

Más detalles

CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP

CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP CAPÍTULO 4. EL EXPLORADOR DE WINDOWS XP Características del Explorador de Windows El Explorador de Windows es una de las aplicaciones más importantes con las que cuenta Windows. Es una herramienta indispensable

Más detalles

Tema 3. Espacios vectoriales

Tema 3. Espacios vectoriales Tema 3. Espacios vectoriales Estructura del tema. Definición y propiedades. Ejemplos. Dependencia e independencia lineal. Conceptos de base y dimensión. Coordenadas Subespacios vectoriales. 0.1. Definición

Más detalles

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse.

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse. TABLA DE DECISION La tabla de decisión es una herramienta que sintetiza procesos en los cuales se dan un conjunto de condiciones y un conjunto de acciones a tomar según el valor que toman las condiciones.

Más detalles

TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL

TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL 5.6 MODIFICACIÓN DE LA BASE DE DATOS SQL posee comandos destinados también para modificar la base de datos, entre estos se tienen operaciones de borrado,

Más detalles

Tema III. Capítulo 2. Sistemas generadores. Sistemas libres. Bases.

Tema III. Capítulo 2. Sistemas generadores. Sistemas libres. Bases. Tema III Capítulo 2 Sistemas generadores Sistemas libres Bases Álgebra Lineal I Departamento de Métodos Matemáticos y de Representación UDC 2 Sistemas generadores Sistemas libres Bases 1 Combinación lineal

Más detalles

Funciones, x, y, gráficos

Funciones, x, y, gráficos Funciones, x, y, gráficos Vamos a ver los siguientes temas: funciones, definición, dominio, codominio, imágenes, gráficos, y algo más. Recordemos el concepto de función: Una función es una relación entre

Más detalles

1.4.- D E S I G U A L D A D E S

1.4.- D E S I G U A L D A D E S 1.4.- D E S I G U A L D A D E S OBJETIVO: Que el alumno conozca y maneje las reglas empleadas en la resolución de desigualdades y las use para determinar el conjunto solución de una desigualdad dada y

Más detalles

Ampliación de Estructuras de Datos

Ampliación de Estructuras de Datos Ampliación de Estructuras de Datos Amalia Duch Barcelona, marzo de 2007 Índice 1. Diccionarios implementados con árboles binarios de búsqueda 1 2. TAD Cola de Prioridad 4 3. Heapsort 8 1. Diccionarios

Más detalles

Capítulo 9. Archivos de sintaxis

Capítulo 9. Archivos de sintaxis Capítulo 9 Archivos de sintaxis El SPSS permite generar y editar archivos de texto con sintaxis SPSS, es decir, archivos de texto con instrucciones de programación en un lenguaje propio del SPSS. Esta

Más detalles

Formularios. Formularios Diapositiva 1

Formularios. Formularios Diapositiva 1 Formularios Crear un formulario utilizando el Asistente para formularios Modificación en vista Diseño Adición de Controles a un Formulario Adición de un Subformulario a un formulario Formularios Diapositiva

Más detalles

Operación de Microsoft Word

Operación de Microsoft Word Trabajar con tablas Las tablas permiten organizar la información y crear atractivos diseños de página con columnas paralelas de texto y gráficos. Las tablas pueden utilizarse para alinear números en columnas

Más detalles