lunes, 23 de febrero de 2015

TIPOS DE BASE DE DATOS
BASE DE DATOS (BD)

·                    
Ø  Es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. Actualmente debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de las base de datos están en formato digital, siendo este un componente electrónico y por ende se ha desarrollado y se ofrece un amplio rango de soluciones almacenamiento de datos.
·                     Ø  Es una colección de información organizada de forma que un programa de ordenador pueda seleccionar rápidamente los fragmentos de datos que necesite.

  

VENTAJA DE LAS BASES DE DATOS
Ø  Independencia de los datos y los programas y procesos. Permite modificar los datos, excepto el código de aplicaciones.
Ø  Menor redundancia, es decir, no es necesario la repetición de datos. Solamente se indica la manera en la que se relacionan éstos.




Ø  Obtener más información de la misma cantidad de data. La base de datos facilita al usuario obtener más información debido a la facilidad que provee esta estructura para proveer datos a los usuarios.
Ø  Integridad de los datos, lo que genera mayor dificultad de perder la información o de realizar incoherencias con los datos.
Ø  Mayor seguridad en los datos. Al permitir restringir el acceso a los usuarios, cada tipo de éstos tendrá la posibilidad de acceder a ciertos elementos.
Ø  Coherencia de los resultados. Al recolectar y almacenarse la información una sola vez, en los procedimientos se utilizan los mismos datos, razón por la que los resultados son coherentes.
Ø  Datos más documentados. Gracias a los metadatos que permiten detallar la información de la base de datos.
Ø  Acceso simultaneo a los datos, facilitando controlar el acceso de usuarios de manera concurrente.
Ø  Balance de Requerimientos Conflictivos. Para que la Base de Datos trabaje apropiadamente, necesita de una persona o grupo que se encargue de su funcionamiento. El título para esa posición es Administrador de Base de Datos y provee la ventaja de que Diseña el sistema tomando en mente la necesidad de cada departamento de la empresa. Por lo tanto se beneficia mayormente la empresa aunque algunos departamentos podrían tener leves desventajas. Tradicionalmente se diseñaba y programa según la necesidad de cada departamento por separado.
Ø  Reducción del espacio de almacenamiento, debido a una mejor estructuración de los datos.

Ø  Acceso a los datos más eficiente. La organización de los datos produce un resultado más óptimo en rendimiento. Igualmente, en el caso de empresas, usuarios de distintas oficinas pueden compartir datos si están autorizados.
Ø  Reducción del espacio de almacenamiento, gracias a una mejor estructuración de los datos.
Ø  Se refuerza la estandarización. Debido a que es más fácil estandarizar procesos, formas, nombres de datos, formas, etc.
Ø  Flexibilidad y rapidez al obtener datos. El usuario puede obtener información de la Base de Datos con escribir breves oraciones. Esto evita el antiguo proceso de llenar una petición al Centro de Cómputos para poder obtener un informe.

Ø  Aumenta la productividad de los programadores, debido a que los programadores no se tienen que preocupar por la organización de los datos ni de su validación, se pueden concentrar en resolver otros problemas inmediatos, mejorando de ese modo su productividad.



DESVENTAJAS DE LAS BASES DE DATOS

Ø  Ausencia de estándares reales, lo cual significa una excesiva dependencia a los sistemas comerciales del mercado. Sin embargo, actualmente un gran sector de la tecnología esta aceptado como estándar de hecho.
Ø  Requiere personal calificado, debido a la dificultad del manejo de este tipo de sistemas. Esto requiere que los programadores y los analistas deben tomar cursos que los adiestren para poder comprender las capacidades y limitaciones de las Bases de Datos.
Ø  Instalación costosa, ya que el control y administración de bases de datos requiere de un software y hardware de elevado coste. Además de la adquisición y mantenimiento del Sistema Gestor de Datos (SGBD).
Ø  Falta de rentabilidad a corto plazo, debido al coste de equipos y de personal, al igual del tiempo que tarda en estar operativa.
Ø  Tamaño. El Sistema de Manejo de Base de Datos (DBMS) requiere de mucho espacio en disco duro y también requiere de mucha memoria principal (RAM) para poder correr adecuadamente.
Ø  Requerimientos adicionales de Equipo. El adquirir un producto de Base de Datos, requiere a su vez adquirir equipo adicional para poder correr ese producto como por ejemplo, servidores, memoria, discos duros, entre otros. Si se pretende correr la Base de Datos con el mínimo de requerimientos, esta posiblemente se degrada.




IMPORTANCIA DE UTILIZAR BASE DE DATOS EN LA ACTUALIDAD
En la actualidad la recopilación de datos es fundamental para que una empresa o institución mantenga sus relaciones. Por este motivo se le brinda una gran importancia al mantenimiento de la base de datos y también al constante crecimiento de la misma. Es importante que la base contenga ciertos datos fundamentales de la persona, como por ejemplo su teléfono (fijo, móvil o ambos), dirección de correo electrónico y la dirección postal. Estas bases de datos son dinámicas, pues se modifican todo el tiempo, a diferencia de las estáticas que suelen recopilar información o documentos históricos.

PROGRAMAS PARA MANEJAR BASE DE DATOS.
Los sistemas de gestión de bases de datos son un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. Algunos ejemplos son:

MySQL Database


Es una base de datos basada en un servidor que permita a varios usuarios acceder a múltiples base de datos. El software funciona en múltiples plataformas, incluyendo la mayoría de las variedades de UNIX y Windows. Ofrece usabilidad de primer plano limitado y esta diseñado como servidor de base de datos back-end. MySQL se diferencia de otros productos por su costo.
PostgreSQL




PostgreSQL es un sistema de gestión de base de datos relacional orientada a objetos y libre, publicado bajo la licencia BSD.
Como muchos otros proyectos de código abierto, el desarrollo de PostgreSQL no es manejado por una empresa y/o persona, sino que es dirigido por una comunidad de desarrolladores que trabajan de forma desinteresada, altruista, libre y/o apoyados por organizaciones comerciales. Dicha comunidad es denominada el PGDG (PostgreSQL Global DevelopmentGroup).

Firebird



Firebird es un sistema de administración de base de datos relacional (o RDBMS) (Lenguaje consultas: SQL) de código abierto, basado en la versión 6 de Interbase, cuyo código fue liberado por Borland en 2000. Su código fue reescrito de C a C++. El proyecto se desarrolla activamente, el 18 de abril de 2008 fue liberada la versión 2.1 y el 26 de diciembre de 2009 fue liberada la versión 2.5.0 RC1.
A finales de la década de 1990, Borland decidió liberar el código de Interbase. Diversos integrantes de la plantilla crearon una nueva empresa denominada IBPhoenix, y junto a otros desarrolladores independientes, crearon el fork ahora conocido como Firebird. Más tarde, Borland decidiría volver a privatizar Interbase y comercializar sus licencias. Sin embargo, Firebird sigue siendo un proyecto de código abierto bajo una licencia similar a la MPL (Mozilla PublicLicense).

SQLite



SQLite es un sistema de gestión de bases de datos relacional compatible con ACID, contenida en una relativamente pequeña (~275 kiB) biblioteca escrita en C. SQLite es un proyecto de dominio público creado por D. Richard Hipp.
A diferencia de los sistema de gestión de bases de datos cliente-servidor, el motor de SQLite no es un proceso independiente con el que el programa principal se comunica. En lugar de eso, la biblioteca SQLite se enlaza con el programa pasando a ser parte integral del mismo. El programa utiliza la funcionalidad de SQLite a través de llamadas simples a subrutinas y funciones. Esto reduce la latencia en el acceso a la base de datos, debido a que las llamadas a funciones son más eficientes que la comunicación entre procesos. El conjunto de la base de datos (definiciones, tablas, índices, y los propios datos), son guardados como un sólo fichero estándar en la máquina host. Este diseño simple se logra bloqueando todo el fichero de base de datos al principio de cada transacción.

DB2 Express-C



DB2 express-C es un motor de base de datos perteneciente a la empresa IBM, conteniendo parte de las funcionalidades de la versión de pago DB2 propiedad también de la empresa IBM, este motor de base de datos es gratuita pero no libre (como aquellas que tienen licencia GPL) y cuenta con la ventaja de no tener limite de crecimiento en sus archivos de base de datos.

MariaDB

MariaDB es un servidor de base de datos derivado de MySQL con licencia GPL. Es desarrollado por Michael Widenius (fundador de MySQL) y la comunidad de desarrolladores de software libre. Introduce dos motores de almacenamiento nuevos, uno llamado Aria -que reemplaza con ventajas a MyISAM- y otro llamado XtraDB -en sustitución de InnoDB. Tiene una alta compatibilidad con MySQL ya que posee las mismas órdenes, interfaces, APIs y bibliotecas, siendo su objetivo poder cambiar un servidor por otro directamente, Este servidor surge tras la compra de sunmicrosystems por parte de oracle, es un fork directo de mysql para disponer de una version de este con licencia GPL, ya que tras esta compra oracle cambio la licencia de mysql por una de tipo privativo.






Microsoft Access


Microsoft Access es un sistema de gestión de bases de datos para los sistemas operativos Microsoft Windows, desarrollado por Microsoft y orientado a ser usado en un entorno personal o en pequeñas organizaciones. Es un componente de la suite ofimática Microsoft Office. Permite crear ficheros de bases de datos relacionales que pueden ser fácilmente gestionadas por una interfaz gráfica simple. Además, estas bases de datos pueden ser consultadas por otros programas. Este programa permite manipular los datos en forma de tablas (formadas por filas y columnas), crear relaciones entre tablas, consultas, formularios para introducir datos e informes para presentar la información. 25. Expresiones Trabajar con bases de datos y objetos de bases de datos puede ser complicado para el usuario novel. La información que se proporciona a continuación está pensada para ayudarle a familiarizarse con los componentes que integran Microsoft Access.




MODELOS DE BASE DE DATOS

Un modelo de datos es básicamente una "descripción" de algo conocido como contenedor de datos (algo en donde se guarda la información), así como de los métodos para almacenar y recuperar información de esos contenedores. Los modelos de datos no son cosas físicas: son abstracciones que permiten la implementación de un sistema eficiente de base de datos; por lo general se refieren a algoritmos, y conceptos matemáticos. Algunos modelos con frecuencia utilizados en las bases de datos son:





  •    Base de datos jerárquicos:

Éstas son bases de datos que, como su nombre indica, almacenan su información en una estructura jerárquica. En este modelo los datos se organizan en una forma similar a un árbol (visto al revés), en donde un nodo padre de información puede tener varios hijos. El nodo que no tiene padres es llamado raíz, y a los nodos que no tienen hijos se los conoce como hojas. Las bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones que manejan un gran volumen de información y datos muy compartidos permitiendo crear estructuras estables y de gran rendimiento. Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos.





















  •  Base de datos de red

Artículo principal: Base de datos de red Éste es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es la modificación del concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida en el modelo jerárquico). Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución eficiente al problema de redundancia de datos; pero, aun así, la dificultad que significa administrar la información en una base de datos de red ha significado que sea un modelo utilizado en su mayoría por programadores más que por usuarios finales.















  •    Bases de datos transaccionales

Son bases de datos cuyo único fin es el envío y recepción de datos a grandes velocidades, estas bases son muy poco comunes y están dirigidas por lo general al entorno de análisis de calidad, datos de producción e industrial, es importante entender que su fin único es recolectar y recuperar los datos a la mayor velocidad posible, por lo tanto la redundancia y duplicación de información no es un problema como con las demás bases de datos, por lo general para poderlas aprovechar al máximo permiten algún tipo de conectividad a bases de datos relacionales.



  •      Bases de datos relacionales

Éste es el modelo utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. Tras ser postulados sus fundamentos en 1970 por Edgar Frank Codd, de los laboratorios IBM en San José (California), no tardó en consolidarse como un nuevo paradigma en los modelos de base de datos. Su idea fundamental es el uso de "relaciones". Estas relaciones podrían considerarse en forma lógica como conjuntos de datos llamados "tuplas". Pese a que ésta es la teoría de las bases de datos relacionales creadas por Codd, la mayoría de las veces se conceptualiza de una manera más fácil de imaginar. Esto es pensando en cada relación como si fuese una tabla que está compuesta por registros (las filas de una tabla), que representarían las tuplas, y campos (las columnas de una tabla). En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a diferencia de otros modelos como el jerárquico y el de red). Esto tiene la considerable ventaja de que es más fácil de entender y de utilizar para un usuario esporádico de la base de datos. La información puede ser recuperada o almacenada mediante "consultas" que ofrecen una amplia flexibilidad y poder para administrar la información. El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estándar implementado por los principales motores o sistemas de gestión de bases de datos relacionales. Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce como normalización de una base de datos.




  •  MODELO RELACIONAL
      El modelo relacional es una forma de ver los datos que consta de:
o                  Una representación de los datos mediante tablas llamadas “relaciones” ( Estructura )
o                  Un conjunto de restricciones que permiten la consistencia de los datos ( Integridad )
o                  Un conjunto de operadores que permiten manipular dichos datos ( Lenguaje de Manipulación )
















  •       Bases de datos multidimensionales:
Son bases de datos ideadas para desarrollar aplicaciones muy concretas, como creación de Cubos OLAP. Básicamente no se diferencian demasiado de las bases de datos relacionales (una tabla en una base de datos relacional podría serlo también en una base de datos multidimensional), la diferencia está más bien a nivel conceptual; en las bases de datos multidimensionales los campos o atributos de una tabla pueden ser de dos tipos, o bien representan dimensiones de la tabla, o bien representan métricas que se desean estudiar.
Base de datos multidimensional Las bases de datos multidimensionales se utilizan principalmente para crear aplicaciones OLAP y pueden verse como bases de datos de una sola tabla, su peculiaridad es que por cada dimensión tienen un campo (o columna), y otro campo por cada métrica o hecho, es decir estas tablas almacenan registros cuyos campos son de la forma: (d1,d2,d3,...,f1,f2,f3,...) Donde los campos 'di' hacen referencia a las dimensiones de la tabla, y los campos 'fi' a las métricas o hechos que se quiere almacenar, estudiar o analizar.













  •    Bases de datos documentales:
En este último grupo, cada registro se corresponde con un documento, sea éste de cualquier tipo: una publicación impresa, un documento audiovisual, gráfico o sonoro, un documento de archivo, un documento electrónico,...etc.














  •    Bases De Datos Orientadas A Objetos
Son bases de datos ideadas para desarrollar aplicaciones muy concretas, como creación de Cubos OLAP. Básicamente no se diferencian demasiado de las bases de datos relacionales (una tabla en una base de datos relacional podría serlo también en una base de datos multidimensional), la diferencia está más bien a nivel conceptual; en las bases de datos multidimensionales los campos o atributos de una tabla pueden ser de dos tipos, o bien representan dimensiones de la tabla, o bien representan métricas que se desean estudiar.
Base de datos multidimensional Las bases de datos multidimensionales se utilizan principalmente para crear aplicaciones OLAP y pueden verse como bases de datos de una sola tabla, su peculiaridad es que por cada dimensión tienen un campo (o columna), y otro campo por cada métrica o hecho, es decir estas tablas almacenan registros cuyos campos son de la forma: (d1,d2,d3,...,f1,f2,f3,...) Donde los campos 'di' hacen referencia a las dimensiones de la tabla, y los campos 'fi' a las métricas o hechos que se quiere almacenar, estudiar o analizar.


  • Bases de datos documentales: En este último grupo, cada registro se corresponde con un documento, sea éste de cualquier tipo: una publicación impresa, un documento audiovisual, gráfico o sonoro, un documento de archivo, un documento electrónico,...




  • Bases de datos orientadas a objetos:
Este modelo, bastante reciente, y propio de los modelos informáticos orientados a objetos, trata de almacenar en la base de datos los objetos completos (estado y comportamiento).
Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos importantes del paradigma de objetos:
Encapsulación - Propiedad que permite ocultar la información al resto de los objetos, impidiendo así accesos incorrectos o conflictos.
Herencia - Propiedad a través de la cual los objetos heredan comportamiento dentro de una jerarquía de clases.
Polimorfismo - Propiedad de una operación mediante la cual puede ser aplicada a distintos tipos de objetos.
En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte de la definición de la base de datos. Una operación (llamada función) se especifica en dos partes. La interfaz (o signatura) de una operación incluye el nombre de la operación y los tipos de datos de sus argumentos (o parámetros). La implementación (o método) de la operación se especifica separadamente y puede modificarse sin afectar la interfaz. Los programas de aplicación de los usuarios pueden operar sobre los datos invocando a dichas operaciones a través de sus nombres y argumentos, sea cual sea la forma en la que se han implementado. Esto podría denominarse independencia entre programas y operaciones.




  •    Base de datos deductiva:
En esencia, un programalógico; mapeo de relaciones base hacia hechos, y reglas que son usadas para definir nuevas relaciones en términos de las relaciones base y el procesamiento de consultas. Los sistemas Bases de Datos Deductivas intentan madicar el hecho de que los datos requeridos residan en la memoria principal (por lo que la gestión de almacenamiento secundario no viene al caso) de modo que un SGBD se amplíe para manejar datos que residen en almacenamiento secundario.
En un sistema de Bases de Datos Deductivas por lo regular se usa un lenguaje declarativo para especicar reglas. Con lenguaje declarativo se quiere decir un lenguaje que dene lo que un programa desea lograr, en vez de especicarlos detalles de cómo lograrlo.













  •  SISTEMA DE GESTIÓN DE BASE DE DATOS DISTRIBUIDA
Un sistema de gestión de bases de datos distribuidas (SGBDD) es un Sistema de Gestión de bases de datos que gestiona la BD distribuida
Funcionalidades adicionales de un SGBDD
Accede a sitios remotos y transmite consultas y datos a través de varios sitios mediante una red de comunicación.
Almacena el esquema de distribución y replicación de los datos en el catálogo del sistema.
Establece las estrategias de ejecución de las consultas y las transacciones que acceden a los datos en más de un sitio.
Decide sobre cual copia de los datos replicados acceder.
Mantiene la consistencia de las copias de los datos replicados.
Realiza la recuperación ante los fallos.



Una Base de Datos Distribuida (BDD) es una colección de datos distribuidos en diferentes nodos de una red de computadoras.



DIAGRAMA ENTIDAD RELACION

Diagrama Entidad Relación: Denominado por sus siglas como: E-R; Este modelo representa a la realidad a través de un Esquema gráfico empleando los terminología de Entidades, que son objetos que existen y son los elementos principales que se identifican en el problema a resolver con el diagramado y se distinguen de otros por sus características particulares denominadas Atributos, el enlace que rige la unión de las entidades esta representada por la relación del modelo.
En un DER, cada entidad se representa mediante un rectángulo, cada relación mediante un rombo y cada dominio (conjunto donde toma valores el atributo) mediante un círculo. Mediante líneas se conectan las entidades con las relaciones, igual que las entidades con los dominios, representando a los atributos. Los Atributos Llaves se representan subrayando el correspondiente conjunto de valores.
En ocasiones, una entidad no puede ser identificada únicamente por el valor de sus propios atributos. En estos casos, se utilizan conjuntamente las relaciones con los atributos para lograr la requerida identificación unívoca. Estas entidades reciben el nombre de entidades débiles y se representan en el DER con un doble rectángulo. El MER restringe las relaciones a usar para identificar las entidades débiles a relaciones binarias del tipo 1: N. Así, por ejemplo, una ocurrencia de "trabajador" puede tener N ocurrencias "persona-dependiente" asociadas, donde además, la existencia de las ocurrencias en la segunda entidad depende de la existencia de una ocurrencia que le corresponda en la primera entidad. Por ejemplo, en el modelo habrá personas dependientes de un trabajador sólo si ese trabajador existe. Para indicar esa dependencia en la existencia se usa una saeta en el DER. La llave de una entidad débil se forma combinando la llave de la entidad regular que la determina con algún otro atributo que defina unívocamente cada entidad débil asociada a una entidad regular dada. (Una entidad se denomina regular si no es débil).
En una relación, la llave es la combinación de las llaves de todas las entidades asociadas. Para cada relación se determina su tipo (simple o complejo) y en el DER se escribe el tipo de correspondencia. 

El Modelo Entidad-Relación.

1. Se elabora el diagrama (o diagramas) entidad-relación.
2. Se completa el modelo con listas de atributos y una descripción de otras restricciones que no se pueden reflejar en el diagrama.
Dado lo rudimentario de esta técnica se necesita cierto entrenamiento y experiencia para lograr buenos modelos de datos.
El modelado de datos no acaba con el uso de esta técnica. Son necesarias otras técnicas para lograr un modelo directamente implementable en una base de datos. Brevemente:
Transformación de relaciones múltiples en binarias.
Normalización de una base de datos de relaciones (algunas relaciones pueden transformarse en atributos y viceversa).
Conversión en tablas (en caso de utilizar una base de datos relacional).

Base Teórica y Conceptual

El modelo entidad-relación se basa en los conceptos descritos a continuación para representar un modelo de la vida real.

Entidad

Una entidad es un objeto que existe y se distingue de otros objetos de acuerdo a sus características llamadas Atributos. Las Entidades pueden ser concretas como una persona o abstractas como una fecha.
Representa una “cosa” u "objeto" del mundo real con existencia independiente, es decir, se diferencia unívocamente de cualquier otro objeto o cosa, incluso siendo del mismo tipo, o una misma entidad.
Algunos Ejemplos:
  • Una persona. (Se diferencia de cualquier otra persona, incluso siendo gemelos).
  • Un automóvil. (Aunque sean de la misma marca, el mismo modelo,..., tendrán atributos diferentes, por ejemplo, el número de bastidor).
  • Una casa (Aunque sea exactamente igual a otra, aún se diferenciará en su dirección).
Una entidad puede ser un objeto con existencia física como: una persona, un animal, una casa, etc. (entidad concreta), o un objeto con existencia conceptual como: un puesto de trabajo, una asignatura de clases, un nombre,etc. (entidad abstracta).
Una entidad está descrita y se representa por sus características o atributos. Por ejemplo, la entidad Persona puede llevar consigo las características: Nombre, Apellido, Género, Estatura, Peso, Fecha de nacimiento, etc...

Atributos

Los atributos son las propiedades que describen a cada entidad en un conjunto de entidades.
Un conjunto de entidades dentro de una entidad, tiene valores específicos asignados para cada uno de sus atributos, de esta forma, es posible su identificación unívoca.
Ejemplos:
A la colección de entidades Alumnos, con el siguiente conjunto de atributos en común, (id, nombre, edad, semestre), pertenecen las entidades:
(1, Sofia, 18 años, 2)
(2, Josefa, 19 años, 5)
(3, Gabriela, 20 años, 2)
Cada una de las entidades pertenecientes a este conjunto se diferencia de las demás por el valor de sus atributos. Nótese que dos o más entidades diferentes pueden tener los mismos valores para algunos de sus atributos, pero nunca para todos.
En particular, los atributos identificativos son aquellos que permiten diferenciar a una instancia de la entidad de otra distinta. Por ejemplo, el atributo identificativo que distingue a un alumno de otro es su número de id.
Para cada atributo, existe un dominio del mismo, este hace referencia al tipo de datos que será almacenado o a restricciones en los valores que el atributo puede tomar (Cadenas de caracteres, números, solo dos letras, solo números mayores que cero, solo números enteros...).
Cuando una entidad no tiene un valor para un atributo dado, este toma el valor nulo, bien sea que no se conoce, que no existe o que no se sabe nada al respecto del mismo.

Relación

Relación: Una relación es una asociación o relación matemática entre varias Entidades. Las relaciones también se nombran. Se representan en el Diagrama_Entidad_Relación, representado también por E-R mediante flechas y rombos. Cada entidad interviene en una relación con una determinada cardinalidad. La cardinalidad (número de instancias o elementos de una entidad que pueden asociarse a un elemento de la otra entidad relacionada) se representa mediante una pareja de datos, en minúsculas, de la forma (cardinalidad mínima, cardinalidad máxima), asociada a cada uno de las entidades que intervienen en la relación. Son posibles las siguientes cardinalidades: (0,1), (1,1), (0,n), (1,n), (m,n). También se informa de las cardinalidades máximas con las que intervienen las entidades en la relación.
Los Diagramas E-R son lenguajes gráfico para describir conceptos. Informalmente, son simples Dibujos o Gráficos que describen la información que trata un sistema de información y el Software que lo automatiza. El tipo de relación se define tomando los máximos de las cardinalidades que intervienen en la relación.


Conjunto de relaciones

Consiste en una colección, o conjunto, de relaciones de la misma naturaleza.


Restricciones

Son reglas que deben mantener los datos almacenados en la base de datos. No se deben de quebrantar a menos que tenga otra relacion de una tabla de uno a muchos.


Correspondencia de cardinalidades

Dado un conjunto de relaciones en el que participan dos o más conjuntos de entidades, la correspondencia de cardinalidad indica el número de entidades con las que puede estar relacionada una entidad dada.
Una a una (1:1). En una relación uno a uno, cada registro de la Tabla A sólo puede tener un registro coincidente en la Tabla B y viceversa. Este tipo de relación no es habitual, debido a que la mayoría de la información relacionada de esta forma estaría en una sola tabla. Puede utilizar la relación uno a uno para dividir una tabla con muchos campos, para aislar parte de una tabla por razones de seguridad o para almacenar información que sólo se aplica a un subconjunto de la tabla principal. Por ejemplo, puede crear una tabla que registre los empleados participantes en un partido de fútbol benéfico. Cada jugador de Fútbol de la tabla Jugadores de fútbol tiene un registro coincidente en la tabla Empleados.
Ejemplo: Nación y Capital
Una a varios(1:N).. La relación uno a varios es el tipo de relación más común. En este tipo de relación, un registro de la Tabla A puede tener muchos registros coincidentes en la Tabla B, pero un registro de la Tabla B sólo tiene un registro coincidente en la Tabla A. Ejemplo: cliente y pedidos.
Varios a Uno: Una entidad en A se relaciona exclusivamente con una entidad en B. Pero una entidad en B se puede relacionar con 0 o muchas entidades en A.
Muchos a muchos(N:N). En una relación mucho a mucho, un registro de la Tabla A puede tener muchos registros coincidentes en la Tabla B, y viceversa. Este tipo de relación sólo es posible si se define una tercera tabla (denominada tabla de unión) cuya clave principal (Clave principal: uno o más campos (columnas) cuyos valores identifican de manera exclusiva cada registro de una tabla. Una clave principal no puede permitir valores Nulo y debe tener siempre un índice exclusivo.

Restricciones de participación

Dado un conjunto de relaciones R en el cual participa un conjunto de entidades A, dicha participación puede ser de dos tipos:
  •  Total: Cuando cada entidad en A participa en al menos una relación de R.
  • Parcial: Cuando al menos una entidad en A NO participa en alguna relación de R.

Claves

Es un subconjunto del conjunto de atributos comunes en una colección de entidades, que permite identificar unívocamente cada una de las entidades pertenecientes a dicha colección. Asimismo, permiten distinguir entre sí las relaciones de un conjunto de relaciones.
Dentro de los conjuntos de entidades existen los siguientes tipos de claves:
*Superclave: Es un subconjunto de atributos que permite distinguir unívocamente cada una de las entidades de un conjunto de entidades. Si se añade un atributo al anterior subconjunto, el resultado seguirá siendo una superclave.

Clave candidata: Dada una superclave, si ésta deja de serlo quitando únicamente uno de los atributos que la componen, entonces ésta es una clave candidata.
Clave primaria: Es una clave candidata, elegida por el diseñador de la base de datos, para identificar unívocamente las entidades en un conjunto de entidades.
Los valores de los atributos de una clave, no pueden ser todos iguales para dos o más entidades.
Para poder distinguir unívocamente las relaciones en un conjunto de relaciones R, se deben considerar dos casos:
*R NO tiene atributos asociados: En este caso, se usa como clave primaria de R la unión de las claves primarias de todos los conjuntos de entidades participantes.
*R tiene atributos asociados: En este caso, se usa como clave primaria de R la unión de los atributos asociados y las claves primarias de todos los conjuntos de entidades participantes.
Si el conjunto de relaciones, R, sobre las que se pretende determinar la clave primaria está compuesto de relaciones binarias, con los conjuntos de entidades participantes A y B, se consideran los siguientes casos, según sus cardinalidades:
R es de muchos a uno de A a B entonces sólo se toma la clave primaria de A, como clave primaria de R.
*R es de uno a muchos de A a B entonces se toma sólo la clave primaria de B, como clave primaria de R.
*R es de uno a uno de A a B entonces se toma cualquiera de las dos claves primarias, como clave primaria de R.
* R es de muchos a muchos de A a B entonces se toma la unión de los atributos que conforman las claves primarias de A y de B, como clave primaria de R.

Diagrama entidad-relación

Los diagramas ER son un lenguaje gráfico para describir conceptos. Informalmente, son simples dibujos o gráficos que describen información que trata un sistema de información y el software que lo automatiza.

Entidad

Las entidades son el fundamento del modelo entidad relación. Podemos adoptar como definición de entidad cualquier cosa o parte del mundo que es distinguible del resto. Por ejemplo, en un sistema bancario, las personas y las cuentas bancarias se podrían interpretar como entidades. Las entidades pueden representar entes concretos, como una persona o un avión, o abstractas, como por ejemplo un préstamo o una reserva.

Atributo

Se representan mediante un círculo o elipse etiquetado mediante un nombre en su interior. Cuando un atributo es identificativo de la entidad se suele subrayar dicha etiqueta.

Relaciones

Se representa mediante un rombo etiquetado en su interior con un verbo. Este rombo se debe unir mediante líneas con las entidades (rectángulos) que relaciona.
Por motivos de legibilidad, los atributos no suelen representarse en un diagrama entidad-relación, sino que se describen textualmente en otros documentos adjuntos.

Representación del Objeto de Estudio en el Mundo de los Datos

• Entidades.
• Atributos de las Entidades.
• Atributo llave.
• Relaciones entre las Entidades.
• Modelo gráfico de las Entidades y sus Relaciones. (Diagrama Entidad Relación)
• Modelo Lógico de los Datos.
Obtención del Diagrama Entidad Relación

Componentes y Diagrama E-R

  • Entidad Regular: Una Entidad fuerte (también conocida como entidad regular es aquella que sí puede ser identificada unívocamente. En los casos en que se requiera, se puede dar que una entidad fuerte "preste" algunos de sus Atributos a una entidad débil para que, esta última, se pueda identificar.
  • Entidad débil: Es aquella que no puede existir sin participar en la relación, es decir, aquella que no puede ser unívocamente identificada solamente por sus atributos como Clave.
  • Relaciones: La relación existente entre las entidades. Incricriben a cada entidad en un Conjunto de entidades. Un conjunto de entidades dentro de una entidad, tiene valores específicos asignados para cada uno de sus atributos, de esta forma, es posible su identificación unívoca.
Ejemplos:
A la colección de entidades Alumnos, con el siguiente conjunto de atributos en común, (id, nombre, edad, semestre), pertenecen las entidades: (1, Sofía, 18 años, 2)(2, Josefa, 19 años, 5) (3, Gabriela, 20 años, 2.
  • Conector: Separador Una Clave principal se utiliza para relacionar una tabla con claves externas de otras tablas.) Consta de dos campos: las claves externas Clave externa: uno o más campos de tabla (columnas) que hacen referencia al campo o campos de clave principal de otra tabla. Una Clave externa indica cómo están relacionadas las tablas.) de las Tablas A y B. Una relación de Varios a varios no es sino dos relaciones de Uno a varios con una tercera tabla. Por ejemplo, la tabla Pedidos y la tabla Productos tienen una relación de Varios a varios que se define mediante la creación de dos relaciones de Uno a varios con la tabla Detalles de pedidos. Un pedido puede incluir muchos productos, y cada producto puede aparecer en muchos pedidos. Ejemplo: personas y viviendas.
Pasos a seguir para el Diagrama Entidad Relación
1. Una entidad se relaciona con otra entidad con una línea continua, ya que no lleva flechas, es solo una dirección continua. 2. Toda relación debe de llevar una cardinalidad (determina el nivel de cardinalidad). 3. Una relación entre dos entidades siempre se va a dar por medio de un rombo (si tienes una entidad alumno, otra materia, se traza una línea en el medio de la línea se pone un rombo, dentro del rombo se pone "el alumno se inscribe", el nivel seria uno a muchos ya que el alumno se inscribe a varias materias). 4. Cada entidad deberá tener sus elementos.
Operaciones sobre objetos gráficos del diagrama Entidad Relación
Generalización/Especialización: Permite formar una nueva entidad, mediante la unión de otras entidades. El proceso inverso se denomina especialización.
Agregación:Permite formar una nueva entidad, sobre la base de una relación.
Agrupamiento: Define una nueva entidad, donde cada ocurrencia es un grupo de ocurrencias de la entidad fuente.
La Generalización y especialización Es el resultado de la unión de 2 o más conjuntos de entidades (de bajo nivel) para producir un conjunto de entidades de más alto nivel. La generalización se usa para hacer resaltar los parecidos entre tipos de entidades de nivel más bajo y ocultar sus diferencias.
La generalización consiste en identificar todos aquellos atributos iguales de un conjunto de entidades para formar una entidad(es) global(es) con dichos atributos semejantes, dicha entidad(es) global(es) quedara a un nivel más alto al de las entidades origen.
La agregación surge de la limitación que existe en el modelado de E-R, al no permitir expresar las relaciones entre relaciones de un modelo E-R en el caso de que una relación X se quiera unir con una entidad cualquiera para formar otra relación.