A continuación se presenta un ejemplo de modelo relacional correspondiente a clientes de un banco y sus cuentas.

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

Download "A continuación se presenta un ejemplo de modelo relacional correspondiente a clientes de un banco y sus cuentas."

Transcripción

1 Modelo Relacional. En 1970, el modo en que se veían las bases de datos cambió por completo cuando E. F. Codd introdujo el modelo relacional. En aquellos momentos, el enfoque existente para la estructura de las bases de datos utilizaba punteros físicos (direcciones de disco) para relacionar registros de distintos archivos. Si, por ejemplo, se quería relacionar un registro con un registro, se debía añadir al registro un campo conteniendo la dirección en disco del registro. Este campo añadido, un puntero físico, siempre señalaría desde el registro al registro. Codd demostró que estas bases de datos limitaban en gran medida los tipos de operaciones que los usuarios podían realizar sobre los datos. Además, estas bases de datos eran muy vulnerables a cambios en el entorno físico. Si se añadían los controladores de un nuevo disco al sistema y los datos se movían de una localización física a otra, se requería una conversión de los archivos de datos. Estos sistemas se basaban en el modelo de red y el modelo jerárquico, los dos modelos lógicos que constituyeron la primera generación de los SGBD. El modelo relacional representa la segunda generación de los SGBD. En él, todos los datos están estructurados a nivel lógico como tablas formadas por filas y columnas, aunque a nivel físico pueden tener una estructura completamente distinta. Un punto fuerte del modelo relacional es la sencillez de su estructura lógica. Estas tablas, pueden ser construidas de diversas maneras: Creando un conjunto de tablas iniciales y aplicar ciertas operaciones (normalización) hasta conseguir el esquema más óptimo. Convertir el diagrama MER a tablas y posteriormente aplicar también estas operaciones hasta conseguir el esquema óptimo. La primera técnica fue de las primeras en existir y, como es de suponerse, la segunda al ser más reciente es mucho más conveniente en varios aspectos: El partir de un diagrama visual es muy útil para apreciar los detalles, de ahí que se llame modelo conceptual. El crear las tablas iniciales es mucho más simple a través de las reglas de conversión (MER-Relacional). Se podría pensar que es lo mismo porque finalmente hay que aplicar operaciones (normalización) a las tablas de todas formas, pero la ventaja de partir del MER es que estas operaciones son mínimas por lo general. Lo anterior tiene otra ventaja: aún cuando se normalice de manera deficiente, se garantiza un esquema aceptable, lo que en la primera técnica no es así.

2 El modelo relacional, como todo modelo de datos, tiene que ver con tres aspectos de los datos: Estructura de datos. Integridad de datos. Manejo de datos. Nos avocaremos por ahora al primer punto. A continuación se presenta un ejemplo de modelo relacional correspondiente a clientes de un banco y sus cuentas. Se puede apreciar la tabla cliente y los datos del mismo, así como la tabla cuenta y los datos de cada cuenta. Pero, se puede saber quién es el dueño de cada cuenta? O bien a quién le pertenece alguna de esas cuentas? Este diagrama está incompleto, ya que no hay como relacionar estas tablas. Se presenta a continuación el esquema que sí corresponde al problema referido:

3 Qué información se puede obtener? Claramente la información de cada cliente, la información de cada cuenta y se puede conocer a quien pertenece cada cuenta. Podría querer conocer por ejemplo el nombre y dirección de los clientes que mantienen saldos mayores a 500. Cómo se relacionan? A través de la tabla cliente-cuenta. Este esquema corresponde al MER que se encuentra a continuación. Como se mencionó, es posible obtenerlo directamente a partir del MER, como también generar las tablas partiendo de cero. Nótese que ambas cardinalidades son (1,N), lo que significa que los clientes de la base tienen una o más cuentas y que las cuentas de la base tienen uno o más clientes propietarios. id_cliente nombre_cliente calle_cliente ciudad_cliente Cliente (1,n) tiene (1,n) Cuenta número_cuenta saldo Estructura La relación es el elemento básico del modelo relacional y se representa por una tabla. Las tablas se representan gráficamente como una estructura rectangular formada por filas y columnas. Cada columna almacena información sobre una propiedad determinada de la tabla (atributo): nombre, carnet, apellidos, edad,... Cada fila posee una ocurrencia o ejemplar de la instancia o relación representada por la tabla (a las filas se las llama también tuplas). Elementos importantes: Relación Tupla Atributo Numero de tuplas Numero de atributos Dominio Clave primaria Tabla Fila Columna Cardinalidad Grado Colección de valores, de los cuales uno o más atributos obtienen sus valores reales. Identificador único para la tabla, es decir, una columna o combinación de columnas con la propiedad de que nunca existen 2 filas de la tabla con el mismo valor en esa columna o combinación de columnas.

4 Ejemplo Tabla (relación) Película título año duración Tipo Star Wars color Mighty Ducks color Wayne's World color Por ejemplo, la información de las oficinas de una empresa inmobiliaria se representa mediante la relación OFICINA, que tiene columnas para los atributos Onum (número de oficina), Calle, Area, Población, Teléfono y Fax. La información sobre el staff se representa mediante la relación PLANTILLA, que tiene columnas para los atributos Enum (número de empleado), Nombre, Apellido, Dirección, Teléfono, Puesto, Fecha_nac, Salario, DNI, Onum (número de la oficina a la que pertenece el empleado). A continuación se muestra una instancia de la relación OFICINA y una instancia de la relación PLANTILLA. Como se puede observar, cada columna contiene valores de un solo atributo. Por ejemplo, la columna Onum sólo contiene números de oficinas que existen. OFICINA Onum Calle Area Población Teléfono Fax O5 Enmedio, 8 Centro Castellón O7 Moyano, s/n Centro Castellón O3 San Miguel, 1 Villarreal O4 Trafalgar, 23 Grao Castellón O2 Cedre, 26 Villarreal

5 PLANTILLA Enum Nombre Apellido Dirección Teléfono Puesto Fecha_nac Salario DNI Onum EL21 Amelia Pastor Magallanes, 15 Castellón Director 12/10/ O5 EG37 Pedro Cubedo Bayarri, 11 Villarreal Superviso r 24/3/ O3 EG14 Luis Collado Borriol, 35 Villarreal Administ. 9/5/ O3 EA9 Rita Renal Casalduch, 32 Castellón Superviso r 19/5/ O7 EG5 Julio Prats Melilla, 23 Villarreal Director 19/12/ O3 EL41 Carlos Baeza Herrero, 51 Castellón Superviso r 29/2/ O5 Dominio Los dominios constituyen una poderosa característica del modelo relacional. Cada atributo de una base de datos relacional se define sobre un dominio, pudiendo haber varios atributos definidos sobre el mismo dominio. Permiten especificar los posibles valores válidos para uno o varios atributos. Un dominio D es un conjunto finito de valores homogéneos y atómicos caracterizados por un nombre. Homogéneo significa que los valores son todos del mismo tipo y atómicos significa que son indivisibles. Ejemplos de dominios serían: Colores: Es el conjunto de los colores D={rojo, verde, azul} Números de DNI: Es conjunto de números del DNI válidos (0-9), formados por ocho dígitos. Edad: Edades posibles de los empleados entre 18 y 80 años. Todo dominio ha de tener un nombre por el cual nos podamos referir a él. Por ejemplo el dominio "Nacionalidades" tiene valores: España, Francia, Chile, Argentina... Si descompusiéramos España en E,s,p,... perdería la semántica. (indivisible)

6 Cada domino debe tener también un tipo de datos; así el tipo de datos del dominio "nacionalidades" es un conjunto de caracteres de longitud 10. Se considera que los dominios no incluyen nulos, ya que nulo (null) no es un valor. La siguiente tabla muestra los dominios de los atributos de la relación OFICINA. Nótese que en esta relación hay dos atributos que están definidos sobre el mismo dominio: Teléfono y Fax. Atributo Nombre del Dominio Descripción Definición Onum NUM_OFICINA Posibles valores de número de oficina 3 digitos; rango O1-O99 Calle NOM_CALLE Nombres de calles de España 25 caracteres Area NOM_AREA Nombres de áreas de las poblaciones de España 20 caracteres Población NOM_POBLACION Nombres de las poblaciones de España 15 caracteres Teléfono NUM_TEL_FAX Números de teléfono de España 9 digitos Fax NUM_TEL_FAX Números de teléfono de España 9 dígitos Tipos de Datos Como se menciono, cada dominio debe definirse sobre algún tipo de dato, es decir cada atributo tendrá que estar definido de acuerdo a un tipo de datos. Veamos algunos: Entero (Integer) Números enteros sin parte decimal. Carácter (Char) Caracteres del código ASCII, de Boleano (Boolean) Real Cadena (String) Pueden contener los valores de falso o verdadero Números que pueden incluir una parte decimal En una secuencia de caracteres que se trata como un solo dato. En relación a los datos numéricos, existen diversos tipos, que consideran rangos específicos que pueden abarcar. La elección de uno u otro dependerá del problema: el rango que alcanza el valor del atributo debe definir cual utilizar. Entero Tipo Rango de valores que acepta Integer (Entero) -32,768 a 32,767 Word (Palabra) 0 a ShortInt (Entero corto) -128 a 127

7 Byte 0 a 255 LongInt (Entero largo) -2,147,483,648 a 2,147,483,648 Real Tipo Rango de valores que acepta Real 2.9E-39 a 1.7E38 Single 1.5E-45 a 3.4E38 Double 5.0E-324 a 1.7E308 Extended 1.9E-4851 a 1.1E4932 Comp -9.2E18 a 9.2E18 Los tipos de datos a utilizar dependerán del SGBD que se utilice. Algunos manejan otro tipo de datos como Fecha/Hora: para introducir datos en formato fecha u hora Moneda :para introducir datos en formato número y con el signo monetario Autonumérico: se numera automáticamente el contenido Nulos Un nulo no representa el valor cero ni la cadena vacía; éstos son valores que tienen significado. El nulo implica ausencia de información. Se puede definir el valor nulo como una marca utilizada para representar información desconocida. La necesidad de valores nulos es evidente por diversas razones: Existencia de tuplas con ciertos atributos desconocidos en ese momento. Necesidad de añadir un nuevo atributo a una tabla ya existente; atributo que en el momento de introducirse no tendrá ningún valor para las tuplas de la relación. Posibilidad de atributos inaplicables a ciertas tuplas, como la editorial para un artículo. En claves foráneas indican que el registro actual no está relacionado con ninguna tabla. Ya que los nulos no son valores, deben tratarse de modo diferente, lo que puede causar problemas de implementación.

8 Atributo Un atributo A es el papel que tiene un determinado dominio en una relación. D es el dominio de A y se denota dom(a). Es muy usual dar el mismo nombre al atributo y al dominio. En el caso de que sean varios los atributos de una misma tabla definidos sobre el mismo dominio, habrá que darles nombres distintos, ya que una tabla no puede tener dos atributos con el mismo nombre. Por ejemplo los atributos edad_física y edad_mental pueden estar definidos sobre el mismo dominio edad; o los atributos precio_compra y precio_venta pueden estar definidos sobre el mismo dominio precio, enteros de longitud 5 mayores que 0. Relación Una relación R sobre un conjunto de valores D 1, D 2, D n se compone de 2 partes: una cabecera y un cuerpo. La cabecera esta formada por un conjunto de atributos. Cada atributo corresponde a un único dominio, y todos los atributos son distintos, es decir, no hay dos atributos que se llamen igual. El cuerpo esta formado por un conjunto de tuplas que varía en el tiempo. Cada tupla es un conjunto de pares atributo:valor: La cantidad de atributos se le conoce como grado y la cantidad de tuplas se le conoce como cardinalidad. La relación OFICINA tiene la siguiente cabecera: { (Onum:NUM_OFICINA), (Calle:NOM_CALLE), (Area:NOM_AREA), (Población:NOM_POBLACION),(Teléfono:NUM_TEL_FAX), Fax:NUM_TEL_FAX)}. Siendo la siguiente una de sus tuplas: { (Onum:O5), (Calle:Enmedio,8), (Area:Centro), (Población:Castellón), (Teléfono: ), (Fax: )}.

9 Claves Una clave candidata de una relación R es un conjunto no vacío de atributos que identifican univoca y mínimamente a una tupla. Toda relación siempre tendrá una clave candidata. Clave primaria: es aquella clave candidata que el usuario escogerá, por consideraciones ajenas al modelo relacional, para identificar a las tuplas de una relación. Clave alternativa: son aquellas claves candidatas que no han sido elegidas como primarias. Clave ajena o foránea de una relación R2 es un conjunto no vacío de atributos cuyos valores han de coincidir con los valores de la clave primaria de otra relación R1. La clave foránea y la correspondiente clave primaria han de estar definidas sobre los mismos dominios. Ningún componente de la clave primaria de una relación puede en algún momento no tener valor (aceptar nulos); no tiene sentido modelar una entidad que no podemos identificar ni distinguir una de otra.

10 Transformación MER-Relacional Se transformara el esquema conceptual (MER) obtenido en la fase anterior a un esquema relacional. Este esquema sigue siendo independiente del SGBD a ser utilizado en la siguiente etapa. El paso del esquema MER al relacional se basa en los siguientes principios: 1. Todo tipo de entidad se convierte en relación. Cada entidad del esquema MER dará lugar a una nueva relación cuya clave primaria es el identificador principal de la entidad. Identificador principal: atributo(s) que forman la clave primaria de la nueva relación. Se deben subrayar en la relación. Cada atributo de una entidad se transforma en un atributo de la relación creada para la entidad. Tomar en cuenta: Atributos obligatorios: atributos que deben contar con un valor en la tabla, no debe aceptar valores nulos. (restricción NOT NULL.) Atributos opcionales: atributos que pueden tomar valores nulos (no se conoce el valor, etc) Identificador alternativo: atributo alternativo en la entidad que debe ser único en la relación (restricción UNIQUE). Atributos monovaluados: dan lugar a un atributo de la relación. id_cliente nombre_cliente calle_cliente ciudad_cliente Cliente La relación sería la siguiente: Cliente (id_cliente, nombre_cliente, calle_cliente, ciudad_cliente) PK: id_cliente (PK: primary key->clave primaria) Atributos multivaluados: dan lugar a una nueva relación cuya clave primaria es la concatenación de la clave primaria de la entidad en la que se sitúa el atributo multivaluado mas el nombre del atributo multivaluado.

11 id_cliente nombre_cliente direccion_cliente telefono_cliente Cliente Cliente (id_cliente, nombre_cliente, direccion_cliente) PK: id_cliente Teléfonos_cliente (id_cliente, telefono_cliente) PK: id_cliente, telefono_cliente; FK: id_cliente referencia a Cliente. FK: foreign key->clave foranea) Atributos compuestos: se pueden transformar según las siguientes alternativas: a. Eliminar el atributo compuesto considerando todos sus componentes como atributos individuales. calle numero ciudad id_cliente nombre_cliente direccion_cliente telefono_cliente Cliente Cliente (id_cliente, nombre_cliente, calle, numero, ciudad, telefono_cliente) PK: id_cliente b. eliminar los componentes individuales y considerar el atributo compuesto entero como un sólo atributo. Cliente (id_cliente, nombre_cliente, direccion_cliente, telefono_cliente) PK: id_cliente Atributos derivados: atributos que se obtienen como resultado de un calculo sobre otros atributos. No existe para los atributos derivados una representación directa y concreta en el modelo relacional y sus SGBD. En este caso, los atributos se tratan de la forma usual. Se calcula el valor del atributo derivado cada vez que se inserten o borren las ocurrencias de los atributos que intervienen en el cálculo de este. Para esto se implementan los procedimientos del caso y se añaden las restricciones correspondientes. Atributos de Interrelaciones Si la interrelación se transforma en una relación, todos sus atributos pasan a ser columnas de la relación. En caso de que la relación se transforme mediante propagación de clave, sus atributos migran junto con la clave a la relación que corresponda, aunque puede ser mejor crear una nueva relación para representar una interrelación que tiene atributos.

12 Dependencia por existencia. Una interrelación 1:N de dependencia en existencia origina una propagación de clave desde la relación que representa a la entidad fuerte a la relación que representa a la entidad débil. No puede existir ninguna ocurrencia de la entidad hijo (débil) que no este relacionada con una ocurrencia de la entidad padre (fuerte). codigo_edificio direccion_edificio Edificio (1,1) E tiene (1,n) Planta codigo_planta numero_habitaciones Edificio (codigo_edificio, direccion_edificio) PK: codigo_edificio Planta (codigo_planta, numero_habitaciones, codigo_edificio) PK: codigo_planta FK: codigo_edificio referencia a Edificio. Dependencia por identidad. Una interrelación 1:N de dependencia en identificación da lugar a una propagación de clave desde la relación que representa a la entidad fuerte a la relación que representa a la entidad débil, de tal forma que la entidad débil requiere de la clave de la entidad fuerte para su identificación. La clave de la relación que representa a la entidad débil queda formada por la concatenación de la clave foránea y la clave de la entidad débil. Có d igo No mb re Nr_hojas Editorial Libro (1,1) I ti ene (1,N) Ejemplar Númer o Estado Posición Libro (codigo, nombre, nr_hojas, editorial) PK: codigo Ejemplar (codigo, numero, estado, posición) PK: codigo, numero FK: codigo referencia a Libro. 2. Todo tipo de interrelación N:M se transforma en relación. Las interrelaciones N:M dan lugar a una nueva relación cuya clave serán las claves primarias de las entidades que enlaza la interrelación. De esta forma los atributos que forman la clave primaria de esta nueva relación son claves foráneas respecto a las tablas en donde son claves primarias.

13 id_cliente nombre_cliente calle_cliente ciudad_cliente Cliente (1,n) tiene (1,n) Cuenta número_cuenta saldo Cliente (id_cliente, nombre_cliente, calle_cliente, ciudad_cliente) PK: id_cliente Cuenta (numero_cuenta, saldo) PK: numero_cuenta Tiene (id_cliente, numero_cuenta) PK. Id_cliente, numero_cuenta FK: id_cliente referencia a Cliente, numero_cuenta referencia a Cuenta. Si la interrelación tiene atributos, estos pasaran a formar parte de la relación creada para la interrelación. id_cliente nombre_cliente calle_cliente ciudad_cliente Cliente (1,n) tiene privilegio (1,n) Cuenta número_cuenta saldo Cliente (id_cliente, nombre_cliente, calle_cliente, ciudad_cliente) PK: id_cliente Cuenta (numero_cuenta, saldo) PK: numero_cuenta Tiene (id_cliente, numero_cuenta, privilegio) PK. Id_cliente, numero_cuenta FK: id_cliente referencia a Cliente, numero_cuenta referencia a Cuenta. 3. Todo tipo de interrelación 1:N se traduce en el fenómeno de propagación de la clave. Se propaga la clave primaria de la entidad que se encuentra en el lado 1 a la entidad que se encuentra en el lado N. Si existen atributos en la interrelación, estos también se propagaran. nombre_ciudad habitantes_ciudad Ciudad (1,n) (1,1) esta Region numero_region nombre_region habitantes_region Region (numero_region, nombre_region, habitantes_region) PK: numero_region Ciudad (nombre_ciudad, habitantes_ciudad, numero_region) PK: nombre_ciudad, FK: numero_region referencia a Region. fecha código nombre direccion Proveedor (1,1) (1,n) suministra Producto código nombre precio_unitario

14 Proveedor (codigo, nombre, direccion) PK: codigo Vendedor (codigo, nombre, precio_unitario, codigo_prov, fecha) PK: codigo, FK: codigo_prov referencia a Proveedor Un aspecto importante en estas interrelaciones tiene que ver con las cardinalidades mínimas. Si la cardinalidad mínima de la entidad que se propaga es 1, significa que no pueden admitirse valores nulos en la clave foránea (clave propagada). En cambio, si es 0, si se admiten valores nulos. Si en la parte de cardinalidad minima hay una participación parcial: tasa_descuento numero_pedido fecha Pedido (1,n) (0,1) suministra Vendedor nombre_vendedor fono Se podrían generar las siguientes tablas: Vendedor (nombre_vendedor, fono_vendedor) PK: nombre_vendedor Pedido (numero_pedido, fecha, tasa_descuento, nombre_vendedor) PK: numero_pedido, FK: nombre_vendedor referencia a Vendedor En este caso puede ocurrir que tasa_descuento y nombre_vendedor tomen valores nulos. Si el número relativo de esos pedidos es grande, y no se puede admitir valores nulos, una mejor alternativa sería establecer tres relaciones (lo cual es el caso más general): Se crea una nueva relación para la interrelación cuyo tratamiento seria igual que el de las interrelaciones N:M con la salvedad de que la clave primaria de la nueva relación constara de la clave primaria de la entidad que se encuentra en el lado N de la interrelación. Vendedor (nombre_vendedor, fono_vendedor) PK: nombre_vendedor Pedido (numero_pedido, fecha) PK: numero_pedido Pedido_Ventas (numero_pedido, nombre_vendedor, tasa_descuento) PK: numero_pedido, FK: numero_pedido referencia a Pedido, nombre_vendedor referencia a Vendedor

15 Si en la parte de cardinalidad maxima hay una participación parcial se necesitan tres tablas: una para representar cada entidad y una para representar la relación. patente_auto marca_auto Auto (0,n) (1,1) es_prop Persona CI_persona nombre_persona direccion_persona Auto (patente_auto, marca_auto) PK: patente_auto Persona (CI_persona, nombre_persona, direccion_persona) PK CI_persona Auto_persona (CI_persona, patente_auto) PK: patente_auto, CI_persona, FK: PK: patente_auto referencia a Auto, CI_persona referencia a Persona Se podría propagar también la clave de la entidad que tiene la cardinalidad minima a la que tiene máximo N: Auto (patente_auto, marca_auto, CI_persona) PK: patente_auto, FK CI_persona referencia a Persona Persona (CI_persona, nombre_persona, direccion_persona) PK CI_persona 4. Interrelaciones 1:1 Son casos en donde se puede crear una relación o bien propagar la clave. Esto último puede ser en ambas direcciones: a) Si la relación es del tipo 1:1 y es obligatorio (total) tipo de participación de ambas entidades, cada entidad se transforma en una tabla con clave principal el identificador de la entidad correspondiente y cada tabla tendrá como clave ajena el identificador de la otra tabla con la cual está relacionada. codigo_empresa direccion_empresa Empresa (1,1) (1,1) tiene Director CI_director nombre Empresa (codigo_empresa, direccion_empresa, CI_director) PK codigo_empresa, FK CI_director referencia a Director Director (CI_director, nombre, codigo_empresa) PK CI_director, FK codigo_empresa referencia a Empresa b) Una de las entidades tiene cardinalidad (0,1) y la otra (1,1), conviene propagar la clave de la entidad con cardinalidad (1,1) a la tabla resultante de la entidad de cardinalidad (0,1). Esta clave foránea no debe aceptar valores nulos.

16 codigo_empleado nombre_empleado Empleado (1,1) responsabl (0,1) e Depto codigo_depto nombre_depto Empleado (codigo_empleado, nombre_empleado) PK: codigo_empleado Depto (codigo_depto, nombre_depto, codigo_empleado) PK: codigo_depto, FK: codigo_empleado referencia a Empleado. c) Si las entidades que se asocian tienen ambas cardinalidades (0,1) entonces es necesario generar tres tablas, una para cada entidad y otra para la relación que deberá contener como atributos las claves primarias de las entidades que participan en la relación. Asi se evitan los valores nulos que aparecerian en caso de propagar una de las claves primarias. No todas las personas tienen animales, en el ejemplo. CI_persona nombre_persona Persona fecha (0,1) (0,1) posee Animal codigo_animal nombre_animal Persona (codigo_persona, nombre_persona) PK: codigo_persona Animal (codigo_animal, nombre_animal) PK: codigo_animal Persona_Animal (codigo_persona, codigo_animal, fecha) PK: codigo_persona, codigo_animal FK: codigo_persona referencia a Persona, codigo_animal referencia a Animal. 5. Relaciones reflexivas Para transformar una relación reflexiva al modelo relacional, se debe suponer que se trata de una relación binaria con la particularidad que las dos entidades son iguales y aplicar las reglas vistas. CI_persona nombre_persona (1,n) Persona (1,1) apadrina Persona (CI_persona, nombre_persona, CI_o_persona) PK: CI_persona FK: CI_o_persona referencia a Persona En este caso la clave foránea no puede aceptar nulos (todas las personas tienen un padrino). Todas las personas de la base son padrinos de al menos una persona.

17 El siguiente caso es igual que el anterior, con la diferencia que la clave foránea si puede aceptar nulos (una persona puede o no tener padrino). CI_persona nombre_persona (1,n) Persona (0,1) apadrina Los mismos esquemas se darán para los siguientes casos. Aquí la diferencia es que una persona de la base puede no aparecer como padrino de alguien (0,n). (No todas las personas de la base son padrinos) CI_persona nombre_persona (0,n) Persona (1,1) apadrina En el siguiente caso una persona de la base puede no aparecer como padrino y una persona puede no tener padrino, por lo que debe aceptar valor nulo en la clave foránea. CI_persona nombre_persona (0,n) Persona (0,1) apadrina Una persona apadrina a una persona y una persona es apadrinada por solo una persona. CI_persona nombre_persona (1,1) Persona (1,1) apadrina Persona (CI_persona, nombre_persona, CI_o_persona) PK: CI_persona FK: CI_o_persona referencia a Persona No se deben aceptar valores nulos. Todas las personas son padrinos de una persona. Si persona apadrina a (0,1) persona y persona puede ser apadrinado por solo una persona el esquema es el mismo. Si una persona apadrina a una sola persona, y una

18 persona puede apadrinar o no (0,1) se deben aceptar valores nulos en la clave foránea. Lo mismo pasa en el caso en que la cardinalidad sea (0,1) en ambos lados. Casos N:M Se tendria una tabla por entidad persona, y una tabla representando la relación apadrina : Persona (CI_persona, nombre_persona) PK: CI_persona Apadrina (CI_persona, CI_o_persona) PK: CI_persona, CI_o_persona FK: CI_persona, CI_o_persona referencia a Persona 6. Generalizaciones Las generalizaciones no son objetos que puedan representarse directamente en el modelo relacional. Ante una entidad y sus subtipos caben varias soluciones de transformación, con la consiguiente pérdida de semántica dependiendo de la estrategia elegida, las cuales son 3: a. Integrar la jerarquía de generalización en una sola entidad uniendo los atributos de las subentidades y añadiendo estos atributos a los de la superentidad. Se añade un atributo discriminativo para indicar el caso al cual pertenece la entidad en consideración. Esta alternativa es aplicable a todos los casos, con todas las coberturas, teniendo el problema de tener que manejar en algunos casos demasiados valores nulos y que las operaciones que sólo actuaban sobre una subentidad tendrán que buscar ahora los casos correspondientes dentro del conjunto completo de casos. matricula_estudiante nombre_estudiante carrera titulo_tesis Estudiante (matricula_estudiante, nombre_estudiante, carrera, titulo_tesis, tipo) PK: matricula_estudiante b. Eliminar la superentidad reteniendo las subentidades. Aquí los atributos heredados deben propagarse entre las subentidades. Esta alternativa no es práctica para

19 generalizaciones superpuestas o parciales; sólo lo es para jerarquías totales y exclusivas. Además, si el número de atributos de la superentidad (comunes a toda las subentidades) es excesivo, su duplicación en el esquema de cada subentidad no se justifica. rut_empleado nombre_empleado especialidad nr_supervisados Ingeniero (rut_empleado, nombre_empleado, especialidad) PK: rut_empleado Gerente (rut_empleado, nombre_empleado, nr_supervisados) PK: rut_empleado c. Retener todas las entidades y establecer explícitamente las interrelaciones entre la superentidad y las subentidades. Esta alternativa se puede considerar como la más general de las tres, ya que siempre es posible. Las desventajas de este enfoque son que el esquema resultante es bastante complejo y hay una redundancia inherente al representar cada eslabón ES-UN en la jerarquía original a través de una relación explícita. Las ventajas, por otra parte, son que modela todos los casos, lo que la hace más flexible ante cambios de requerimientos, y es conveniente si la mayoría de las operaciones son estrictamente locales respecto a la superentidad o a una de las subentidades. nr_proyecto nombre_proyecto nr_modulos contratista principal Proyecto (nr_proyecto, nombre_proyecto) PK: nr_proyecto Desarrollo_Sw (nr_proyecto, nr_módulos) PK: nr_proyecto FK: nr_proyecto referencia a Proyecto Subcontrato (nr_proyecto, contratista_principal) PK: nr_proyecto FK: nr_proyecto referencia a Proyecto

20 Esquema de una base de datos relacional Una base de datos relacional es un conjunto de relaciones normalizadas. Para representar el esquema de una base de datos relacional se debe dar el nombre de sus relaciones, los atributos de éstas, los dominios sobre los que se definen estos atributos, las claves primarias y las claves ajenas. El esquema de la base de datos de la empresa inmobiliaria es el siguiente: OFICINA PLANTILLA INMUEBLE INQUILINO PROPIETARIO VISITA (Onum, Calle, Area, Población, Teléfono, Fax) (Enum, Nombre, Apellido, Dirección, Teléfono, Puesto, Fecha_nac, Salario, DNI, Onum) (Inum, Calle, Area, Población, Tipo, Hab, Alquiler, Pnum, Enum, Onum) (Qnum, Nombre, Apellido, Dirección, Teléfono, Tipo_pref, Alquiler_max) (Pnum, Nombre, Apellido, Dirección, Teléfono) (Qnum, Inum, Fecha, Comentario) En el esquema, los nombres de las relaciones aparecen seguidos de los nombres de los atributos encerrados entre paréntesis. Las claves primarias son los atributos subrayados. Las claves ajenas se representan mediante los siguientes diagramas referenciales. PLANTILLA OFICINA : Oficina a la que pertenece el empleado. INMUEBLE PROPIETARIO : Propietario del inmueble. INMUEBLE PLANTILLA : Empleado encargado del inmueble. INMUEBLE OFICINA : Oficina a la que pertenece el inmueble. VISITA INQUILINO : Inquilino que ha visitado el inmueble. VISITA INMUEBLE : Inmueble que ha sido visitado. A continuación se muestra un estado (instancia) de la base de datos cuyo esquema se acaba de definir.

21 OFICINA Onum Calle Area Población Teléfono Fax O5 Enmedio, 8 Centro Castellón O7 Moyano, s/n Centro Castellón O3 San Miguel, 1 Villarreal O4 Trafalgar, 23 Grao Castellón O2 Cedre, 26 Villarreal PLANTILLA Enum Nombre Apellido Dirección Teléfono Puesto Fecha_nac Salario DNI Onum EL21 Amelia Pastor Magallanes, Director 12/10/ E O5 Castellón EG37 Pedro Cubedo Bayarri, Supervisor 24/3/ X O3 Villarreal EG14 Luis Collado Borriol, Administ. 9/5/ L O3 Villarreal EA9 Rita Renau Casalduch, Supervisor 19/5/ F O7 Castellón EG5 Julio Prats Melilla, Director 19/12/ X O3 Villarreal EL41 Carlos Baeza Herrero, Supervisor 29/2/ T O5 Castellón INMUEBLE Inum Calle Area Población Tipo Hab Alquiler Pnum IA14 Enmedio, 128 Centro Castellón Casa P46 IL94 Riu Ebre, 24 Ronda Sur Castellón Piso P87 IG4 Sorell, 5 Grao Castellón Piso P40 IG36 Alicante,1 Segorbe Casa P93 IG21 San Francisco, 10 Vinaroz Piso P87 IG16 Capuchinos, 19 Rafalafena Castellón Piso P93

22 PROPIETARIO Pnum Nombre Apellido Dirección Teléfono P46 Amparo Felip Asensi 24, Castellón P87 Manuel Obiol Av. Libertad 15, Vinaroz P40 Alberto Estrada Av. del Puerto 52, Castellón P93 Yolanda Robles Purísima 4, Segorbe INQUILINO Qnum Nombre Apellido Dirección Teléfono Tipo Alquiler Q76 Juan Felip Barceló 47, Castellón Piso 375 Q56 Ana Grangel San Rafael 45, Almazora Piso 300 Q74 Elena Abaso Navarra 76, Castellón Casa 700 Q62 Alicia Mori Alloza 45, Castellón Piso 550 VISITA Qnum Inum Fecha Comentario Q56 IA14 24/11/99 muy pequeño Q76 IG4 20/10/99 muy lejos Q56 IG4 26/11/99 Q62 IA14 14/11/99 no tiene salón Q56 IG36 28/10/99

Bases de Datos. Laboratorio III, L106/L111. Profesor: Goyo Celada

Bases de Datos. Laboratorio III, L106/L111. Profesor: Goyo Celada Bases de Datos Laboratorio III, L106/L111 Profesor: Goyo Celada ERwin Data Modeler Herramienta CASE en el modelado de Bases de Datos Metodología de trabajo: Modelo Conceptual Paso al Modelo Relacional

Más detalles

Ing. Yim Isaias Apestegui Florentino

Ing. Yim Isaias Apestegui Florentino Definicion de Modelo Relacional El Modelo Relacional Se basa en una representación del mundo real en que los datos se describen como entidades, relaciones y atributos. El principal concepto del modelo

Más detalles

id_trabajador nombre tarifa_hr tipo_de_oficio id_supv 1235 F. Aguilera 12,50 Electricista A. Calvo 13,75 Fontanero N.

id_trabajador nombre tarifa_hr tipo_de_oficio id_supv 1235 F. Aguilera 12,50 Electricista A. Calvo 13,75 Fontanero N. El modelo relacional Fundamentos de diseño de bases de datos El modelo relacional Bases de datos relacionales El concepto de relación Esquema de la base de datos Instancia de la base de datos Restricciones

Más detalles

Modelo relacional. El modelo relacional

Modelo relacional. El modelo relacional Modelo relacional El modelo relacional Representa la BD como una colección de relaciones En términos informales, cada relación semeja una tabla Tupla Cada fila de la tabla Representa una colección de datos

Más detalles

Metodología de Diseño Lógico. Sistemas Gestores de Bases de Datos

Metodología de Diseño Lógico. Sistemas Gestores de Bases de Datos Introducción El objetivo del diseño lógico es convertir los esquemas conceptuales locales en un esquema lógico global que se ajuste al modelo de SGBD sobre el que se vaya a implementar el sistema. Mientras

Más detalles

DED Diagramas de Estructura Lógica de Datos. Universidad de Oviedo Departamento de Informática

DED Diagramas de Estructura Lógica de Datos. Universidad de Oviedo Departamento de Informática DED Diagramas de Estructura Lógica de Datos Universidad de Oviedo Departamento de Informática Contenidos Introducción Relaciones Construcción del modelo conceptual Normalización Primera Forma Normal Segunda

Más detalles

Transformación ER Relacional para el diseño de bases de datos relacionales

Transformación ER Relacional para el diseño de bases de datos relacionales Transformación ER Relacional para el diseño de bases de datos relacionales Como habíamos avanzado en su momento, un esquema conceptual basado en el modelo Entidad-Relación puede ser transformado, de acuerdo

Más detalles

MODELO RELACIONAL BASE DE DATOS RELACIONALES

MODELO RELACIONAL BASE DE DATOS RELACIONALES MODELO RELACIONAL BASE DE DATOS RELACIONALES Base de Datos Relacional (BDR) Una BDR es una colección de relaciones de diversos grados (numero de atributos), que varían con el tiempo (numero de tuplas,

Más detalles

Base de Datos. Docente: Ing. Francisco Rodríguez BASE DATOS. Resultados. Internet. Requerimientos

Base de Datos. Docente: Ing. Francisco Rodríguez BASE DATOS. Resultados. Internet. Requerimientos UNIVERSIDAD NACIONAL DE TRUJILLO ESCUELA DE INGENERIA INDUSTRIAL Base de Datos Resultados Internet Requerimientos BASE DATOS Docente: Ing. Francisco Rodríguez Base de Datos Tema 4: MODELO RELACIONAL Tema

Más detalles

Restricciones de Integridad

Restricciones de Integridad Restricciones de Integridad Bibliografía: Fundamentos de bases de datos - Korth, Silberschatz Introducción a los sistemas de bases de datos - C.J. Date Restricciones de Integridad Proporcionan un medio

Más detalles

Una base de datos de Access puede estar conformada por varios objetos, los más comunes son los siguientes:

Una base de datos de Access puede estar conformada por varios objetos, los más comunes son los siguientes: MICROSOFT ACCESS DEFINICIÓN MS Access es un programa para manejar bases de datos. Una base de datos es un conjunto de datos de un determinado tema o contexto, almacenados de forma sistemática, para obtener

Más detalles

PROPIEDADES DE LOS CAMPOS. Cada campo de una tabla dispone de una serie de características que proporcionan un control

PROPIEDADES DE LOS CAMPOS. Cada campo de una tabla dispone de una serie de características que proporcionan un control PROPIEDADES DE LOS CAMPOS Cada campo de una tabla dispone de una serie de características que proporcionan un control adicional sobre la forma de funcionar del campo. Las propiedades aparecen en la parte

Más detalles

OPERACIONES CON BASES DE DATOS OFIMÁTICAS Y CORPORATIVAS CURSO: 2009-2010 IES GONZALO NAZARENO

OPERACIONES CON BASES DE DATOS OFIMÁTICAS Y CORPORATIVAS CURSO: 2009-2010 IES GONZALO NAZARENO OPERACIONES CON BASES DE DATOS OFIMÁTICAS Y CORPORATIVAS CURSO: 2009-2010 IES GONZALO NAZARENO UNIDAD DIDACTICA 2: BASES DE DATOS RELACIONALES Índice de contenido 1. El modelo Entidad-Relación (ER)...3

Más detalles

INTRODUCCIÓN A BASE DE DATOS. Excel - Access

INTRODUCCIÓN A BASE DE DATOS. Excel - Access INTRODUCCIÓN A BASE DE DATOS Excel - Access Qué es una Base de Datos? Conjunto de datos relacionados, es decir, conjunto de datos que hablan de lo mismo. (Guía de teléfono, clientes de una multitienda,

Más detalles

Modelo Relacional: Conceptos

Modelo Relacional: Conceptos Relacional: Conceptos M. -Tastets Universidad de Concepción,Chile www.inf.udec.cl\ andrea andrea@udec.cl Relacional II Semestre - 2013 Relacional Relacional de la Unidad Introducir los conceptos básicos

Más detalles

BASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Reglas de Integridad

BASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Reglas de Integridad BASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Reglas de Integridad Lledó Museros / Ismael Sanz museros@icc.uji.es / isanz@icc.uji.es 1de 16 Índice 1. Introducción 2. Revisión Claves 3. Reglas

Más detalles

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los

Más detalles

Carlos Castillo UPF 2008

Carlos Castillo UPF 2008 Sistemas de Información II Tema 3. El modelo entidad-relación Bibliografía: Elmasri y Navathe: Fundamentos de Sistemas de Bases de Datos 3ª edición, 2002 (Capítulo 3). Garcia-Molina, Ullman y Widom: Database

Más detalles

Computación II. Introducción a Visual Basic

Computación II. Introducción a Visual Basic Computación II Introducción a Visual Basic Introducción a Visual Basic Microsoft Visual Basic es un conjunto de herramientas que posibilitan el desarrollo de aplicaciones para Windows de una manera rápida

Más detalles

Normalización. CC20A 1 Computación II Auxiliar 10 Iván Bustamante. Clase Auxiliar 10 1

Normalización. CC20A 1 Computación II Auxiliar 10 Iván Bustamante. Clase Auxiliar 10 1 1 Clase Auxiliar 10 1 Normalización La normalización se usa para ver si una tabla está bien o mal diseñada. Una tabla está bien diseñada si no tiene redundancia (datos repetidos) y está mal en caso contrario.

Más detalles

BASES DE DATOS TEMA 2 MODELOS DE DATOS

BASES DE DATOS TEMA 2 MODELOS DE DATOS SES DE DTOS TEM 2 MODELOS DE DTOS Un modelo de datos es una serie de conceptos que puede utilizarse para describir un conjunto de datos y las operaciones para manipularlos. Hay dos tipos de modelos de

Más detalles

7. Agrupamiento (clustering)

7. Agrupamiento (clustering) 7. Agrupamiento (clustering) INMUEBLES y CONTRATOS I IA4 En medio, 8 Centro Castellón 600 C 004 Q6 600 Visa 00 S /6/99 /5/00 I IL94 Riu Ebre, 4 Ronda Sur Castellón 50 C 0075 Q76 50 Efectivo 700 N //00

Más detalles

Atributos Los atributos son las columnas de un relación y describen características particulares de ella.

Atributos Los atributos son las columnas de un relación y describen características particulares de ella. Unidad III: Modelo relacional 3.1 Estructura básica Tablas El modelo relacional proporciona una manera simple de representar los datos: una tabla bidimensional llamada relación. título año duración tipo

Más detalles

BASES DE DATOS TEMA 2 MODELOS DE DATOS

BASES DE DATOS TEMA 2 MODELOS DE DATOS BASES DE DATOS TEMA 2 MODELOS DE DATOS 2.3 De red En este modelo las entidades se representan como nodos y sus relaciones son las líneas que los unen. En esta estructura cualquier componente puede relacionarse

Más detalles

Estructura de Datos E/R. Recordando Introducción. Etapas del diseño lógico Diseño lógico estándar Diseño lógico específico

Estructura de Datos E/R. Recordando Introducción. Etapas del diseño lógico Diseño lógico estándar Diseño lógico específico Tema III: Transformación del esquema conceptual al relacional 3.1 Introducción. Etapas del diseño lógico Diseño lógico estándar Diseño lógico específico 3.2 Transformación elementos básicos 3.3 Reglas

Más detalles

2. EXPRESIONES 3. OPERADORES Y OPERANDOS 4. INDENTIFICADORES COMO LOCALIDADES DE MEMORIA

2. EXPRESIONES 3. OPERADORES Y OPERANDOS 4. INDENTIFICADORES COMO LOCALIDADES DE MEMORIA CONTENIDOS: 1. TIPOS DE DATOS 2. EXPRESIONES 3. OPERADORES Y OPERANDOS 4. INDENTIICADORES COMO LOCALIDADES DE MEMORIA OBJETIO EDUCACIONAL: El alumno conocerá las reglas para cambiar fórmulas matemáticas

Más detalles

Formato para prácticas de laboratorio

Formato para prácticas de laboratorio CARRERA PLAN DE ESTUDIO CLAVE ASIGNATURA NOMBRE DE LA ASIGNATURA IC 2003-1 5046 Bases de Datos PRÁCTICA No. 3 LABORATORIO DE NOMBRE DE LA PRÁCTICA Bases de Datos DURACIÓN (HORA) Modelo Entidad - Relación

Más detalles

Conceptos básicos de bases de datos

Conceptos básicos de bases de datos Conceptos básicos de bases de datos 1.1 Definición de base de datos Una base de datos es una colección de archivos relacionados que permite el manejo de la información de alguna compañía. Cada uno de dichos

Más detalles

Este documento enumera los diferentes tipos de Diagramas Matriciales y su proceso de construcción.

Este documento enumera los diferentes tipos de Diagramas Matriciales y su proceso de construcción. DIAGRAMA MATRICIAL 1.- INTRODUCCIÓN Este documento enumera los diferentes tipos de Diagramas Matriciales y su proceso de construcción. Muestra su potencial, como herramienta indispensable para la planificación

Más detalles

UNIDAD I. ALGORITMOS

UNIDAD I. ALGORITMOS UNIDAD I. ALGORITMOS 1.1 Definición Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solución a un problema específico. 1.2 Tipos Cualitativos: Son aquellos

Más detalles

Ficha de Aprendizaje N 13

Ficha de Aprendizaje N 13 Ficha de Aprendizaje N 13 Curso: Lógica y lenguaje de programación Tema: Fundamentos de programación Duración: 2 horas pedagógicas Logros de aprendizaje Identifica los diferentes tipos de operadores que

Más detalles

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main. LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan

Más detalles

- Bases de Datos (2012/2013) Adjunto Tema 1: Ampliación DER

- Bases de Datos (2012/2013) Adjunto Tema 1: Ampliación DER Luis Valencia Cabrera lvalencia@us.es (http://www.cs.us.es/~lvalencia) Ciencias de la Computación e IA (http://www.cs.us.es/) Universidad de Sevilla - Bases de Datos (2012/2013) Adjunto Tema 1: Ampliación

Más detalles

UNIDAD 3. MODELO RELACIONAL

UNIDAD 3. MODELO RELACIONAL UNIDAD 3. MODELO RELACIONAL 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 el modelo relacional esté basado

Más detalles

Elementos de un programa en C

Elementos de un programa en C Elementos de un programa en C Un programa en C consta de uno o más archivos. Un archivo es traducido en diferentes fases. La primera fase es el preprocesado, que realiza la inclusión de archivos y la sustitución

Más detalles

HOJAS DE TRABAJO SECTOR. Matemáticas. Material de apoyo para el docente UNIDAD 1. Preparado por: Héctor Muñoz

HOJAS DE TRABAJO SECTOR. Matemáticas. Material de apoyo para el docente UNIDAD 1. Preparado por: Héctor Muñoz HOJAS DE TRABAJO SECTOR Material de apoyo para el docente UNIDAD 1 Preparado por: Héctor Muñoz Diseño Gráfico por: www.genesisgrafica.cl 1. BREVE PRESENTACIÓN DE LA UNIDAD INTRODUCCIÓN A LOS NÚMEROS ENTEROS

Más detalles

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL 1 TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL TECNOLOGÍA DE LA COMPUTADORA FACILITADOR: PARTICIPANTE: DAVID, CHIRIQUÍ 2015 2 Qué es un programa? Un programa informático es un conjunto

Más detalles

Programación en java. Estructuras algorítmicas

Programación en java. Estructuras algorítmicas Programación en java Estructuras algorítmicas Estructuras algoritmicas 1. Conceptos basicos 1. Dato 2. Tipos de datos 3. Operadores 2. dsd Conceptos Basicos DATO: se considera una representación simbólica

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. 9 Nombre: Segunda Forma Normal Contextualización Para qué te ayudarán los grados de normalización? Las normas de forma normal se basan en

Más detalles

Fundamentos de Bases de Datos Facultad de Ciencias UNAM

Fundamentos de Bases de Datos Facultad de Ciencias UNAM Desarrollo Fundamentos de Bases de Datos Facultad de Ciencias UNAM M.I. Gerardo Avilés Rosas gar@ciencias.unam.mx Laboratorio: L en C.C. Erick Orlando Matla Cruz ematla@ciencias.unam.mx Práctica 03 En

Más detalles

entre menú y plato con cardinalidades (0,N) y (3,3), respectivamente. Esta solución garantiza que no se puede "repetir" un plato en el (1,1)

entre menú y plato con cardinalidades (0,N) y (3,3), respectivamente. Esta solución garantiza que no se puede repetir un plato en el (1,1) 1 Algunas consideraciones generales para el diseño: 1) Tanto la fuente de la que procede la receta, como la ubicación del libro, cinta de vídeo, etc., con la información original son simples atributos

Más detalles

Fundamentos de programación y Bases de Datos

Fundamentos de programación y Bases de Datos Fundamentos de programación y Bases de Datos Duración: 25.00 horas Descripción En la actualidad la mayoría de nuestra vida esta basada en el uso de programas informáticos. Para desarrollar un programa

Más detalles

NORMAS DE DISEÑO DE BASE DE DATOS

NORMAS DE DISEÑO DE BASE DE DATOS NORMAS DE DISEÑO DE BASE DE DATOS Julio 2014 NORMAS DE DISEÑO DE BASE DE DATOS Página: 2 de 9 ESTRUCTURA DEL DOCUMENTO. 1 CONSIDERACIONES GENERALES.... 3 2 MODELO CONCEPTUAL DE DATOS (MCD)... 3 2.1 PROPIEDADES...

Más detalles

Vamos a profundizar un poco sobre los distintos tipos de datos que podemos introducir en las celdas de una hoja de cálculo

Vamos a profundizar un poco sobre los distintos tipos de datos que podemos introducir en las celdas de una hoja de cálculo Tipos de datos. Vamos a profundizar un poco sobre los distintos tipos de datos que podemos introducir en las celdas de una hoja de cálculo Valores Constantes: Es un dato que se introduce directamente en

Más detalles

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 1 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 2 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo

Más detalles

Contenido. 1. El proceso 2. Los modelos 3. Los diagramas 4. Ejemplo

Contenido. 1. El proceso 2. Los modelos 3. Los diagramas 4. Ejemplo Tutorial Contenido 1. El proceso 2. Los modelos 3. Los diagramas 4. Ejemplo 1. El proceso Fases soportadas por UML Análisis de requisitos de usuario Análisis de requisitos de software Diseño de la plataforma

Más detalles

El Modelo Relacional de Bases de Datos

El Modelo Relacional de Bases de Datos El Modelo Relacional de Bases de Datos Sistemas Gestores de Bases de Datos, ciclo de Administración de Sistemas Informáticos en Red [1] Introducción Unidad 3) Modelo Relacional Gestión de Bases de Datos,

Más detalles

Diseño lógico de. Bases de Datos. Modelo. Entidad - Relación

Diseño lógico de. Bases de Datos. Modelo. Entidad - Relación Tema 2.1. Diseño lógico de Bases de Datos. Modelo Entidad - Relación 1 1. Objetivo de la unidad 3 2. Introducción 3 3. Metodología de diseño de bases de datos 4 4. Modelos de datos 4 5. El modelo entidad-relación

Más detalles

Carlos A. Olarte Ligaduras de Integridad y Restricciones sobre la BD

Carlos A. Olarte Ligaduras de Integridad y Restricciones sobre la BD Ligaduras de Integridad y Restricciones sobre la BD Outline 1 Introducción 2 Ligaduras de Dominio 3 Llaves Primarias 4 Llaves de Unicidad 5 Integridad Referencial Introducción y Motivación Por qué se deben

Más detalles

Bases de datos 1. Teórico: Modelo Relacional

Bases de datos 1. Teórico: Modelo Relacional Bases de datos 1 Teórico: Modelo Relacional MODELO de DATOS RELACIONAL Conceptos del modelo relacional Restricciones del modelo relacional y esquemas de base de datos Operaciones de creación y modificación

Más detalles

Diagramas de secuencia

Diagramas de secuencia Facultad de Ingeniería Departamento de Ingeniería de Sistemas y Computación Diagramas de secuencia Interacciones básicas 1 Para qué sirven los diagramas de secuencia? 2 Para qué sirven los diagramas de

Más detalles

Tipos de datos para Campos

Tipos de datos para Campos Tipos de datos para Campos Tipo de datos Almacena Tamaño Texto Memo Número Fecha/Hora Moneda Autonumérico Sí/No Objeto OLE Datos adjuntos Hipervínculo Asistente para búsquedas Caracteres alfanuméricos

Más detalles

Es toda la información que utiliza el computador. Según sea la información que guardemos en los datos, se clasifican en los siguientes tipos:

Es toda la información que utiliza el computador. Según sea la información que guardemos en los datos, se clasifican en los siguientes tipos: Tipos de datos. Dato: Es toda la información que utiliza el computador. Según sea la información que guardemos en los datos, se clasifican en los siguientes tipos: I Numéricos: Almacenan números y con

Más detalles

DI SEÑO DE BASES DE DATOS Y SEGURIDAD DE LA INFORMACIÓN (31 de mayo de 2005) 3DUFLDO. APELLIDOS: NOMBRE: TITULACIÓN (Sistemas/Gestión):

DI SEÑO DE BASES DE DATOS Y SEGURIDAD DE LA INFORMACIÓN (31 de mayo de 2005) 3DUFLDO. APELLIDOS: NOMBRE: TITULACIÓN (Sistemas/Gestión): (;$0(1 DI SEÑO DE BASES DE DATOS Y SEGURIDAD DE LA INFORMACIÓN (31 de mayo de 2005) 3DUFLDO APELLIDOS: GRUPO (A/B): 7LHHPLXWRVSDUDUHDOL]DUODSDUWHWHyULFDGHOH[DPH Rodee con un círculo la respuesta correcta.

Más detalles

Prof. Mariano Mancuso. Sistemas de información y control diagrama de clases

Prof. Mariano Mancuso. Sistemas de información y control diagrama de clases Prof. Mariano Mancuso Sistemas de información y control diagrama de clases UML Qué son los modelos? Para qué sirven los modelos? Cuáles son los modelos de UML? Se usan todos...? Qué son los modelos? Un

Más detalles

CREAR TABLAS EN BASES DE DATOS CON phpmyadmin. TIPOS DE DATOS BÁSICOS (VARCHAR, INT, FLOAT). INSERTAR FILAS. (CU00840B)

CREAR TABLAS EN BASES DE DATOS CON phpmyadmin. TIPOS DE DATOS BÁSICOS (VARCHAR, INT, FLOAT). INSERTAR FILAS. (CU00840B) APRENDERAPROGRAMAR.COM CREAR TABLAS EN BASES DE DATOS CON phpmyadmin. TIPOS DE DATOS BÁSICOS (VARCHAR, INT, FLOAT). INSERTAR FILAS. (CU00840B) Sección: Cursos Categoría: Tutorial básico del programador

Más detalles

Introducción a las Bases de Datos y al Modelo Relacional

Introducción a las Bases de Datos y al Modelo Relacional 24/10/2014 Introducción a las Bases de Datos y al Modelo Relacional Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla octubre 2014

Más detalles

Diseño de Base de Datos Relacionales

Diseño de Base de Datos Relacionales Diseño de Base de Datos Relacionales 1 Modelización: Proceso para obtener un diseño de Base de Datos, partiendo de un relevamiento de datos y análisis de requerimientos Proceso de Diseño: Relevamiento

Más detalles

Los diagramas de clases y de objetos sirven para modelar diversos aspectos estructurales o estáticos de un sistema: Modelado - Vocabulario del Sistema

Los diagramas de clases y de objetos sirven para modelar diversos aspectos estructurales o estáticos de un sistema: Modelado - Vocabulario del Sistema Modelado Los diagramas de clases y de objetos sirven para modelar diversos aspectos estructurales o estáticos de un sistema: Vocabulario del Sistema Distribución de Responsabilidades Semántica de una Clase

Más detalles

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 7. Modelos de Bases de Datos

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 7. Modelos de Bases de Datos FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 7. Modelos de Bases de Datos 1.- Introducción. 2.- Modelo Jerárquico. 3.- Modelo de Red. 4.- Modelo Relacional. 5.- Otros Modelos. (Capítulo

Más detalles

ESCUELA DE INFORMÁTICA

ESCUELA DE INFORMÁTICA TÉCNICO EN SISTEMAS LABORAL SUBMODULO TEMA 1 (Visual Basic for Application) Microsoft VBA (Visual Basic for Applications) es el lenguaje de macros de Microsoft Visual Basic que se utiliza para programar

Más detalles

Centro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta

Centro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta Centro Asociado Palma de Mallorca Arquitectura de Ordenadores Tutor: Antonio Rivero Cuesta Unidad Didáctica 1 Representación de la Información y Funciones Lógicas Tema 1 Representación de la Información

Más detalles

Laboratorio de Arquitectura de Redes. Punteros en lenguaje C

Laboratorio de Arquitectura de Redes. Punteros en lenguaje C Laboratorio de Arquitectura de Redes Punteros en lenguaje C Punteros en lenguaje C Definición Declaración e inicialización de punteros Operadores de punteros: «*» y «&» Operaciones con punteros Operaciones

Más detalles

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice

Más detalles

Expresiones y sentencias

Expresiones y sentencias Expresiones y sentencias Expresión Construcción (combinación de tokens) que se evalúa para devolver un valor. Sentencia Representación de una acción o una secuencia de acciones. En Java, todas las sentencias

Más detalles

WorkManager E.D. Manual guía de usuario Diseñador de formularios

WorkManager E.D. Manual guía de usuario Diseñador de formularios WorkManager E.D. Manual guía de usuario Diseñador de formularios En esta sección se crean y diseñan formularios. Para ingresar, clic en el menú Configuración/ Diseñador de formularios. Lista de formularios

Más detalles

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo Algoritmos En general, no hay una definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten

Más detalles

Esquema Lógico F1. EXAMEN 1 de diciembre de EQUIPO (NOMBRE:cadena) CP (NOMBRE) DIRECTOR (NOMBRE:cadena) CP (NOMBRE)

Esquema Lógico F1. EXAMEN 1 de diciembre de EQUIPO (NOMBRE:cadena) CP (NOMBRE) DIRECTOR (NOMBRE:cadena) CP (NOMBRE) Esquema Lógico F1 EQUIPO (NOMBRE:cadena) CP (NOMBRE) EXAMEN 1 de diciembre de 2006 DIRECTOR (NOMBRE:cadena) CP (NOMBRE) DIRIGE (EQUIPO:cadena, DIRECTOR:cadena) CP (EQUIPO) CAlt (DIRECTOR) CAj (EQUIPO)

Más detalles

Tema 3. Electrónica Digital

Tema 3. Electrónica Digital Tema 3. Electrónica Digital 1.1. Definiciones Electrónica Digital La Electrónica Digital es la parte de la Electrónica que estudia los sistemas en los que en cada parte del circuito sólo puede haber dos

Más detalles

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I CAPÍTULO III ARITMÉTICA Y CODIFICACIÓN

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I CAPÍTULO III ARITMÉTICA Y CODIFICACIÓN ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I CAPÍTULO III ARITMÉTICA Y CODIFICACIÓN TEMA 3. Aritmética y codificación 3.1 Aritmética binaria 3.2 Formatos de los números y su representación 3.3 Definiciones

Más detalles

Principios de Computadoras II

Principios de Computadoras II Departamento de Ingeniería Electrónica y Computadoras Operadores y Expresiones rcoppo@uns.edu.ar Primer programa en Java 2 Comentarios en Java Comentario tradicional (multi-línea) Comentario de línea Comentario

Más detalles

Creación y Modificación de Blog

Creación y Modificación de Blog Creación y Modificación de Blog El Blog: es un diario personal en línea. Son una forma eficaz de compartir conocimiento y materiales creados y recopilados por el grupo del curso. Puede publicar entradas

Más detalles

UNIDAD 1 GENERALIDADES HTML

UNIDAD 1 GENERALIDADES HTML UNIDAD 1 GENERALIDADES HTML GENERALIDADES HTML5 Una página web es un archivo con texto en el que se insertan diferentes etiquetas HTML, para que ese contenido pueda ser interpretado por el navegador web.

Más detalles

TEMA 1. MATRICES, DETERMINANTES Y APLICACIÓN DE LOS DETERMINANTES. CONCEPTO DE MATRIZ. LA MATRIZ COMO EXPRESIÓN DE TABLAS Y GRAFOS.

TEMA 1. MATRICES, DETERMINANTES Y APLICACIÓN DE LOS DETERMINANTES. CONCEPTO DE MATRIZ. LA MATRIZ COMO EXPRESIÓN DE TABLAS Y GRAFOS. TEMA 1. MATRICES, DETERMINANTES Y APLICACIÓN DE LOS DETERMINANTES. 1. MATRICES. CONCEPTO DE MATRIZ. LA MATRIZ COMO EXPRESIÓN DE TABLAS Y GRAFOS. DEFINICIÓN: Las matrices son tablas numéricas rectangulares

Más detalles

Jornadas sobre Gnu/Linex: Uso de Software Libre en las Administraciones públicas. Sonia Pizarro Redondo

Jornadas sobre Gnu/Linex: Uso de Software Libre en las Administraciones públicas. Sonia Pizarro Redondo OpenOffice Base Jornadas sobre Gnu/Linex: Uso de Software Libre en las Administraciones públicas. Sonia Pizarro Redondo OpenOffice Base Pertenece a la Suite de OpenOffice Es uno de los componentes más

Más detalles

Aritmética de Enteros

Aritmética de Enteros Aritmética de Enteros La aritmética de los computadores difiere de la aritmética usada por nosotros. La diferencia más importante es que los computadores realizan operaciones con números cuya precisión

Más detalles

Introducción Base de datos Tabla Tipos de campos Clave principal Índice Administrador de base de datos Relaciones entre tablas Consulta Formulario

Introducción Base de datos Tabla Tipos de campos Clave principal Índice Administrador de base de datos Relaciones entre tablas Consulta Formulario Introducción Base de datos Tabla Tipos de campos Clave principal Índice Administrador de base de datos Relaciones entre tablas Consulta Formulario Informe Planeación y diseño de una base de datos Access

Más detalles

UNIDAD 12.- Estadística. Tablas y gráficos (tema12 del libro)

UNIDAD 12.- Estadística. Tablas y gráficos (tema12 del libro) UNIDAD 12.- Estadística. Tablas y gráficos (tema12 del libro) 1. ESTADÍSTICA: CLASES Y CONCEPTOS BÁSICOS En sus orígenes históricos, la Estadística estuvo ligada a cuestiones de Estado (recuentos, censos,

Más detalles

CAPITULO II. ENTIDADES PRIMITIVAS PARA EL DESARROLLO DE ALGORITMOS

CAPITULO II. ENTIDADES PRIMITIVAS PARA EL DESARROLLO DE ALGORITMOS CAPIULO II. ENIDADES PRIMIIVAS PARA EL DESARROLLO DE ALGORIMOS 2.1 ipos de datos 2.2 Expresiones 2.3 Operadores y operandos 2.4 Identificadores como localidades de memoria OBJEIVO EDUCACIONAL: El alumno:

Más detalles

TEMA 4. PROCESO UNIFICADO

TEMA 4. PROCESO UNIFICADO TEMA 4. PROCESO UNIFICADO Diseño El objetivo final del diseño es producir un Modelo Lógico del sistema a implementar. Diferencia entre Análisis y Diseño del Proceso Unificado Modelo de Análisis Modelo

Más detalles

Tema 3 Modelo relacional

Tema 3 Modelo relacional Contenido: Bases de Datos y Sistemas de Información Ing. Informática GRUPO A Tema 3 Modelo relacional 3.1 Terminología del modelo relacional 3.2 Paso del modelo ER al modelo relacional 3.3 Creación de

Más detalles

Mapas de Puntos. Cartografía a Temática Cuantitativa. Cartografía de superficie

Mapas de Puntos. Cartografía a Temática Cuantitativa. Cartografía de superficie Cartografía a Temática Cuantitativa Cartografía de superficie En la cartografía a temática tica cuantitativa existe el concepto de superficie estadística. stica. La superficie estadística stica es una

Más detalles

Ministerio de Educación. Base de datos en la Enseñanza. Open Office. Módulo 5: Informes

Ministerio de Educación. Base de datos en la Enseñanza. Open Office. Módulo 5: Informes Ministerio de Educación Base de datos en la Enseñanza. Open Office Módulo 5: Informes Instituto de Tecnologías Educativas 2011 Informes Los informes son la herramienta encargada de presentar los datos

Más detalles

Representación de números enteros: el convenio exceso Z

Representación de números enteros: el convenio exceso Z Representación de números enteros: el convenio exceso Z Apellidos, nombre Martí Campoy, Antonio (amarti@disca.upv.es) Departamento Centro Informàtica de Sistemes i Computadors Escola Tècnica Superior d

Más detalles

Apéndice A: Documentación Base de Datos.

Apéndice A: Documentación Base de Datos. Apéndice A: Documentación Base de Datos. A1. Derivación PROFESOR Idprofesor Nombre CURSO Clave Seccion nombre (1,1) 1:N IMPARTE fig 3.2.1.2 Relación Profesor- Curso Se puede ver en la figura 3.2.1.2 que

Más detalles

CONJUNTOS NUMÉRICOS. La noción de número es tan antigua como el hombre mismo ya que son necesarios para resolver situaciones de la vida diaria.

CONJUNTOS NUMÉRICOS. La noción de número es tan antigua como el hombre mismo ya que son necesarios para resolver situaciones de la vida diaria. CONJUNTOS NUMÉRICOS La noción de número es tan antigua como el hombre mismo ya que son necesarios para resolver situaciones de la vida diaria. Por ejemplo, usamos números para contar una determinada cantidad

Más detalles

Tema: Excel Formulas, Funciones y Macros

Tema: Excel Formulas, Funciones y Macros 1 Facultad Escuela Lugar de Ejecución : Ingeniería. : Biomédica : Laboratorio de Biomédica Tema: Excel Formulas, Funciones y Macros Objetivos Específicos Conocer los conceptos básicos en relación a la

Más detalles

Modelo ERE. Universidad de los Andes Demián Gutierrez Marzo 2011 1

Modelo ERE. Universidad de los Andes Demián Gutierrez Marzo 2011 1 Modelo ERE Universidad de los Andes Demián Gutierrez Marzo 20 Modelo ER / Diagramas ER Modelo Entidad-Relación (ER) (Chen, 976) Modelo Entidad-Relación-Extendido (ERE) (Teorey 986) Es un modelo de datos

Más detalles

Estructura de Datos: Archivos

Estructura de Datos: Archivos Estructura de Datos: Archivos Registros (record) Un registro es una estructura que consiste de un número fijo de componentes llamados campos. Los campos pueden ser de diferentes tipos y deben tener un

Más detalles

UNIVERSIDAD NACIONAL DE ASUNCION FACULTAD POLITÉCNICA CARRERA: LCIK MATERIA: Bases de Datos I Prof: Lic. Lilian Riveros Unidad 2: Modelo Relacional

UNIVERSIDAD NACIONAL DE ASUNCION FACULTAD POLITÉCNICA CARRERA: LCIK MATERIA: Bases de Datos I Prof: Lic. Lilian Riveros Unidad 2: Modelo Relacional El Modelo Relacional es un modelo de datos que nos permite describir la estructura de una base de datos a nivel lógico. En 1969, Edgar Frank Ted Codd (1923-2003) introduce el modelo relacional con una

Más detalles

Teórico 9 Del MER al MR

Teórico 9 Del MER al MR Teórico 9 Del MER al MR Introducción Veremos cómo traducir un modelo conceptual, en forma de Modelo Entidad-Relación, en un modelo lógico de base de datos, en forma de Modelo Relacional. Para esto, estudiaremos

Más detalles

5.3 CREAR FORMULARIOS

5.3 CREAR FORMULARIOS 5.3 CREAR FORMULARIOS Los formularios están diseñados para obtener información específica, hay diferentes tipos de formularios, como por ejemplo, facturas, formularios de pedidos, de registro DISEÑAR UN

Más detalles

CLA. Diagramas de clases en Métrica V3

CLA. Diagramas de clases en Métrica V3 CLA Diagramas de clases en Métrica V3 1 Diagramas de clases Qué es? Representa la estructura y comportamiento de cada uno de los objetos del sistema y sus relaciones con los demás objetos. Objetivos? Representar

Más detalles

Análisis y síntesis de sistemas digitales combinacionales

Análisis y síntesis de sistemas digitales combinacionales Análisis Algoritmo de análisis, para un circuito lógico combinacional Síntesis. Conceptos Circuitos combinacionales bien construidos Circuitos combinacionales mal construidos Criterios de optimización

Más detalles

Análisis y Diseño de Sistemas

Análisis y Diseño de Sistemas Análisis y Diseño de Sistemas Dpto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Clase 17 Modelo Entidad Relación Lic. María Mercedes Vitturini [mvitturi@cs.uns.edu.ar] 1er. CUATRIMESTRE

Más detalles

Programación en Visual Basic Ricardo Rodríguez García

Programación en Visual Basic Ricardo Rodríguez García Manual Básico de Programación en Visual Basic 1.- Estructura de un proyecto Visual Basic Los programas o aplicaciones desarrolladas en Visual Basic van a constituir un único paquete que denominaremos proyecto.

Más detalles

FUNCIONES NUMÉRICAS EXCEL Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

FUNCIONES NUMÉRICAS EXCEL Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE FUNCIONES NUMÉRICAS EXCEL 00 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE FUNCIONES NUMÉRICAS EXCEL 00 FUNCIONES NUMÉRICAS FUNCIÓN SUMA Descripción: Suma todos los números de uno o

Más detalles

CIDE, SA. RIF: J NIT: MODELO FUNCIONAL

CIDE, SA. RIF: J NIT: MODELO FUNCIONAL MODELO FUNCIONAL SIGA C O NTE NlD O Introducción Aspectos Conceptuales Definición de modelo Requisitos de un Modelo Funcional Modelando la Funcionalidad del Sistema: Diagrama de Casos de Uso Definición

Más detalles

Estructuras en LabVIEW.

Estructuras en LabVIEW. Estructuras en LabVIEW. Sumario: 1. Ejecución según el flujo de datos. 2. Estructuras básicas disponibles en LabVIEW. a) Estructura Sequence. b) Estructura Case. c) Estructura For Loop. d) Estructura While

Más detalles