SlideShare a Scribd company logo
1 of 15
Es una herramienta para el modelado de
datos que permite representar las entidades
relevantes de un sistema de información así
  como sus interrelaciones y propiedades.
Modelado Entidad-Relación Se elabora
el diagrama (o diagramas) entidad-
relación.
Se completa el modelo con listas de
atributos y una descripción de otras
restricciones que no se pueden reflejar en
el diagrama.
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
Base de datos relacional
     Una base de datos relacional es una base de
  datos que cumple con el modelo relacional, el cual
    es el modelo más utilizado en la actualidad para
      implementar bases de datos ya planificadas.
    Permiten establecer interconexiones (relaciones)
   entre los datos (que están guardados en tablas), y
  a través de dichas conexiones relacionar los datos
      de ambas tablas, de ahí proviene su nombre:
     "Modelo Relacional". Tras ser postuladas sus
      bases 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.
Características
  Una base de datos relacional se compone de varias tablas o relaciones.
        No pueden existir dos tablas con el mismo nombre ni registro.
      Cada tabla es a su vez un conjunto de registros (filas y columnas).
 La relación entre una tabla padre y un hijo se lleva a cabo por medio de las
                    claves primarias y ajenas (o foráneas).
Las claves primarias son la clave principal de un registro dentro de una tabla y
               éstas deben cumplir con la integridad de datos.
Las claves ajenas se colocan en la tabla hija, contienen el mismo valor que la
clave primaria del registro padre; por medio de éstas se hacen las relaciones.

                                     Elementos
                          Relaciones base y derivadas
 En una base de datos relacional, todos los datos se almacenan y se accede a
     ellos por medio de relaciones. Las relaciones que almacenan datos son
   llamadas "relaciones base" y su implementación es llamada "tabla". Otras
  relaciones no almacenan datos, pero son calculadas al aplicar operaciones
     relacionales. Estas relaciones son llamadas "relaciones derivadas" y su
 implementación es llamada "vista" o "consulta". Las relaciones derivadas son
convenientes ya que expresan información de varias relaciones actuando como
                                 si fuera una sola.
Restricciones
Una restricción es una limitación que obliga el cumplimiento de ciertas condiciones en la base
de datos. Algunas no son determinadas por los usuarios, sino que son inherentemente
definidas por el simple hecho de que la base de datos sea relacional. Algunas otras
restricciones las puede definir el usuario, por ejemplo, usar un campo con valores enteros entre
1 y 10.
Las restricciones proveen un método de implementar reglas en la base de datos. Las
restricciones limitan los datos que pueden ser almacenados en las tablas. Usualmente se
definen usando expresiones que dan como resultado un valor booleano, indicando si los datos
satisfacen la restricción o no.
Las restricciones no son parte formal del modelo relacional, pero son incluidas porque juegan
el rol de organizar mejor los datos. Las restricciones son muy discutidas junto con los
conceptos relacionales.

                                          Dominios
Un dominio describe un conjunto de posibles valores para cierto atributo. Como un
dominio restringe los valores del atributo, puede ser considerado como una restricción.
Matemáticamente, atribuir un dominio a un atributo significa "todos los valores de este
atributo deben de ser elementos del conjunto especificado".
Distintos tipos de dominios son: enteros, cadenas de texto, fecha,no procedurales etc.
Clave única
  Cada tabla puede tener uno o más campos cuyos valores
  identifican de forma única cada registro de dicha tabla, es
decir, no pueden existir dos o más registros diferentes cuyos
 valores en dichos campos sean idénticos. Este conjunto de
                 campos se llama clave única.
Pueden existir varias claves únicas en una determinada tabla,
   y a cada una de éstas suele llamársele candidata a clave
                           primaria.

                         Clave primaria
Una clave primaria es una clave única elegida entre todas las
   candidatas que define unívocamente a todos los demás
  atributos de la tabla, para especificar los datos que serán
 relacionados con las demás tablas. La forma de hacer esto
              es por medio de claves foráneas.
   Sólo puede existir una clave primaria por tabla y ningún
    campo de dicha clave puede contener valores NULL.
Clave foránea

Una clave foránea es una referencia a una clave en otra tabla, determina la relación
 existente en dos tablas. Las claves foráneas no necesitan ser claves únicas en la
                tabla donde están y sí a donde están referenciadas.
Por ejemplo, el código de departamento puede ser una clave foránea en la tabla de
 empleados. Se permite que haya varios empleados en un mismo departamento,
pero habrá uno y sólo un departamento por cada clave distinta de departamento en
                               la tabla de empleados.

                                     Clave índice
  Las claves índice surgen con la necesidad de tener un acceso más rápido a los
 datos. Los índices pueden ser creados con cualquier combinación de campos de
 una tabla. Las consultas que filtran registros por medio de estos campos, pueden
       encontrar los registros de forma no secuencial usando la clave índice.
Las bases de datos relacionales incluyen múltiples técnicas de ordenamiento, cada
  una de ellas es óptima para cierta distribución de datos y tamaño de la relación.
Los índices generalmente no se consideran parte de la base de datos, pues son un
 detalle agregado. Sin embargo, las claves índices son desarrolladas por el mismo
          grupo de programadores que las otras partes de la base de datos
Procedimientos almacenados

 Un procedimiento almacenado es código ejecutable que se asocia y
se almacena con la base de datos. Los procedimientos almacenados
  usualmente recogen y personalizan operaciones comunes, como
    insertar un registro dentro de una tabla, recopilar información
  estadística, o encapsular cálculos complejos. Son frecuentemente
            usados por un API por seguridad o simplicidad.
Los procedimientos almacenados no son parte del modelo relacional,
      pero todas las implementaciones comerciales los incluyen.

                            Estructura
   La base de datos se organiza en dos marcadas secciones; el
                esquema y los datos (o instancia).
 El esquema es la definición de la estructura de la base de datos y
         principalmente almacena los siguientes datos:
El nombre de cada tabla
               El nombre de cada columna
            El tipo de dato de cada columna
       La tabla a la que pertenece cada columna
Las bases de datos relacionales pasan por un proceso al
 que se le conoce como normalización, el resultado de
 dicho proceso es un esquema que permite que la base
         de datos sea usada de manera óptima.
Los datos o instancia es el contenido de la base de datos
en un momento dado. Es en sí, el contenido de todos los
                        registros.

            Manipulación de la información
  Para manipular la información utilizamos un lenguaje
  relacional, actualmente se cuenta con dos lenguajes
 formales el álgebra relacional y el cálculo relacional. El
 álgebra relacional permite describir la forma de realizar
una consulta, en cambio, el cálculo relacional sólo indica
                lo que se desea devolver.
El lenguaje más común para construir las consultas a bases
de datos relacionales es SQL (Structured Query Language),
  un estándar implementado por los principales motores o
     sistemas de gestión de bases de datos relacionales.
       En el modelo relacional los atributos deben estar
    explícitamente relacionados a un nombre en todas las
   operaciones, en cambio, el estándar SQL permite usar
 columnas sin nombre en conjuntos de resultados, como el
    asterisco taquigráfico (*) como notación de consultas.
Al contrario del modelo relacional, el estándar SQL requiere
 que las columnas tengan un orden definido, lo cual es fácil
de implementar en una computadora, ya que la memoria es
                             lineal.
    Es de notar, sin embargo, que en SQL el orden de las
  columnas y los registros devueltos en cierto conjunto de
        resultado nunca está garantizado, a no ser que
        explícitamente sea especificado por el usuario.
Normalización de bases de datos

  El proceso de normalización de bases de datos consiste en
aplicar una serie de reglas a las relaciones obtenidas tras el paso
         del modelo entidad-relación al modelo relacional.
       Las bases de datos relacionales se normalizan para:
                Evitar la redundancia de los datos.
  Evitar problemas de actualización de los datos en las tablas.
                Proteger la integridad de los datos.
En el modelo relacional es frecuente llamar tabla a una relación,
 aunque para que una tabla sea considerada como una relación
           tiene que cumplir con algunas restricciones:
              Cada tabla debe tener su nombre único.
No puede haber dos filas iguales. No se permiten los duplicados.
   Todos los datos en una columna deben ser del mismo tipo.
Terminología relacional equivalente




                       Relación = tabla o archivo
                 Registro = registro, fila , renglón o tupla
                      Atributo = columna o campo
                 Clave = llave o código de identificación
                 Clave Candidata = superclave mínima
                Clave Primaria = clave candidata elegida
        Clave Ajena (o foránea) = clave externa o clave foránea
                  Clave Alternativa = clave secundaria
          Dependencia Multivaluada = dependencia multivalor
  RDBMS = Del inglés Relational Data Base Manager System que significa,
           Sistema Gestor de Bases de Datos Relacionales.
1FN = Significa, Primera Forma Normal o 1NF del inglés First Normal Form.
Los términos Relación, Tupla y Atributo derivan del álgebra y cálculo relacional,
    que constituyen la fuente teórica del modelo de base de datos relacional.
 Todo atributo en una tabla tiene un dominio, el cual representa el conjunto de
  valores que el mismo puede tomar. Una instancia de una tabla puede verse
 entonces como un subconjunto del producto cartesiano entre los dominios de
  los atributos. Sin embargo, suele haber algunas diferencias con la analogía
   matemática, ya que algunos RDBMS permiten filas duplicadas, entre otras
   cosas. Finalmente, una tupla puede razonarse matemáticamente como un
              elemento del producto cartesiano entre los dominios.
Dependencia
Base teórica y conceptual
 El modelo de datos entidad-relación está basado en una percepción del mundo real
que consta de una colección de objetos básicos, llamados entidades, y de relaciones
                                entre esos objetos.
                                            Los             lenguajes               de
                                            programación que ofrece
                                          Entidad
 Representa una “cosa” u "objeto" del mundo real con existencia independiente, es los
                                            son            tres          a
 decir, se diferencia unívocamente de otro objeto o cosa, incluso siendo del mismo
                                            programadores para crear
                                tipo, o una misma entidad.
                                    Algunos Ejemplos:
   Una persona. (Se diferencia de cualquier otra persona, inclusofunciones. Se
                                            sus propias siendo gemelos).
                                            puede             programar
    Un automóvil. (Aunque sean de la misma marca, el mismo modelo,..., tendrán
                atributos diferentes, por ejemplo, el número de chasis).
                                                                                     en
Una casa (Aunque sea exactamente igual a otra, aún se diferenciará en su lenguaje
                                            C.O.F.F.E.E., un dirección).
Una entidad puede ser un objeto con existencia física como: una persona, un animal,
  una casa, etc. (entidad concreta); o un de con existencia conceptual como: un
                                            objeto programación              propio,
   puesto de trabajo, una asignatura de clases, un nombre,etc. (entidad abstracta).
  Una entidad está descrita y se representa por sus características lenguaje de
                                            Python - un o atributos. Por
                                            programación estándar o
ejemplo, la entidad Persona las características: Nombre, Apellido, Género, Estatura,
                            Peso, Fecha de nacimiento, etc...
                                            en C++ SDK.
Atributos
      Los atributos son las características que definen o
  identifican a una entidad. Estas pueden ser muchas, y el
 diseñador solo utiliza o implementa las que considere más
relevantes. Los atributos son las propiedades que describen
         a cada entidad en un conjunto de entidades.
  En un conjunto de entidades, cada 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, 38 años, 2)
                    (2, Josefa, 19 años, 5)
                    (3, Carlos, 20 años, 2)
                                ...

More Related Content

What's hot

El modelo de datos relacional (Base de Datos)
El modelo de datos relacional (Base de Datos)El modelo de datos relacional (Base de Datos)
El modelo de datos relacional (Base de Datos)Jose Carlos Guerra
 
Introducción a las bases de datos relacionales
Introducción a las bases de datos relacionalesIntroducción a las bases de datos relacionales
Introducción a las bases de datos relacionaleskdulcey
 
Bases de Datos Cap:III El modelo relacional
Bases de Datos Cap:III El modelo relacionalBases de Datos Cap:III El modelo relacional
Bases de Datos Cap:III El modelo relacionalVideoconferencias UTPL
 
Diapositivas Modelo Relacional
Diapositivas Modelo RelacionalDiapositivas Modelo Relacional
Diapositivas Modelo RelacionalWiliam Perez
 
Expo. informatica base de datos relacional
Expo. informatica base de datos relacionalExpo. informatica base de datos relacional
Expo. informatica base de datos relacionalWillian Benavides
 
Contenido UNIDAD II. COMO SON LAS BASES DE DATOS.
Contenido UNIDAD II.  COMO SON LAS BASES DE DATOS.Contenido UNIDAD II.  COMO SON LAS BASES DE DATOS.
Contenido UNIDAD II. COMO SON LAS BASES DE DATOS.spgutierrez86
 
Base de datos
Base de datosBase de datos
Base de datosdanicerv
 
03 Modelo Relacional
03 Modelo Relacional03 Modelo Relacional
03 Modelo RelacionalKudos S.A.S
 
Tm10 modelo relacional
Tm10 modelo relacionalTm10 modelo relacional
Tm10 modelo relacionalJulio Pari
 
Modelo Relacional (Base de Datos)
Modelo Relacional (Base de Datos)Modelo Relacional (Base de Datos)
Modelo Relacional (Base de Datos)Neguib Núñez
 
El modelo relacional
El modelo relacionalEl modelo relacional
El modelo relacionalLuis Jherry
 
Base de datos
Base de datosBase de datos
Base de datosjomistef
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacionalSuarezJhon
 

What's hot (20)

El modelo de datos relacional (Base de Datos)
El modelo de datos relacional (Base de Datos)El modelo de datos relacional (Base de Datos)
El modelo de datos relacional (Base de Datos)
 
Introducción a las bases de datos relacionales
Introducción a las bases de datos relacionalesIntroducción a las bases de datos relacionales
Introducción a las bases de datos relacionales
 
T2 bd
T2 bdT2 bd
T2 bd
 
Bases de Datos Cap:III El modelo relacional
Bases de Datos Cap:III El modelo relacionalBases de Datos Cap:III El modelo relacional
Bases de Datos Cap:III El modelo relacional
 
Diapositivas Modelo Relacional
Diapositivas Modelo RelacionalDiapositivas Modelo Relacional
Diapositivas Modelo Relacional
 
Expo. informatica base de datos relacional
Expo. informatica base de datos relacionalExpo. informatica base de datos relacional
Expo. informatica base de datos relacional
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
Contenido UNIDAD II. COMO SON LAS BASES DE DATOS.
Contenido UNIDAD II.  COMO SON LAS BASES DE DATOS.Contenido UNIDAD II.  COMO SON LAS BASES DE DATOS.
Contenido UNIDAD II. COMO SON LAS BASES DE DATOS.
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
03 Modelo Relacional
03 Modelo Relacional03 Modelo Relacional
03 Modelo Relacional
 
Base de datos
Base de datosBase de datos
Base de datos
 
Tm10 modelo relacional
Tm10 modelo relacionalTm10 modelo relacional
Tm10 modelo relacional
 
Modelo Relacional (Base de Datos)
Modelo Relacional (Base de Datos)Modelo Relacional (Base de Datos)
Modelo Relacional (Base de Datos)
 
El modelo relacional
El modelo relacionalEl modelo relacional
El modelo relacional
 
Modelo Relacional
Modelo RelacionalModelo Relacional
Modelo Relacional
 
Base de datos
Base de datosBase de datos
Base de datos
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
G dbdd
G dbddG dbdd
G dbdd
 

Viewers also liked

Capacitacion-en-general
Capacitacion-en-generalCapacitacion-en-general
Capacitacion-en-generallizethdc
 
Dic. Notificación sólo por Carta Certificada Correos de Chile
Dic. Notificación sólo por Carta Certificada Correos de ChileDic. Notificación sólo por Carta Certificada Correos de Chile
Dic. Notificación sólo por Carta Certificada Correos de ChileNelson Leiva®
 
T Ips Metodologia Formacion Proyectos 1
T Ips Metodologia Formacion Proyectos 1T Ips Metodologia Formacion Proyectos 1
T Ips Metodologia Formacion Proyectos 1francisco
 
Acv en jovenes 2
Acv en jovenes 2Acv en jovenes 2
Acv en jovenes 2Eder Ruiz
 
Ley 19880
Ley 19880Ley 19880
Ley 19880SSMN
 
Base de datos relacional
Base de datos relacionalBase de datos relacional
Base de datos relacionalchabbeine
 
Resumen ley 19.880
Resumen ley 19.880Resumen ley 19.880
Resumen ley 19.880Iveth Vogt
 
El Trabajo en Equipo genera Calidad de Servicio en Archivos y Bibliotecas
El Trabajo en Equipo genera Calidad de Servicio en Archivos y Bibliotecas El Trabajo en Equipo genera Calidad de Servicio en Archivos y Bibliotecas
El Trabajo en Equipo genera Calidad de Servicio en Archivos y Bibliotecas matitarosas
 

Viewers also liked (13)

Capacitacion
CapacitacionCapacitacion
Capacitacion
 
Capacitacion-en-general
Capacitacion-en-generalCapacitacion-en-general
Capacitacion-en-general
 
Http2
Http2Http2
Http2
 
Dic. Notificación sólo por Carta Certificada Correos de Chile
Dic. Notificación sólo por Carta Certificada Correos de ChileDic. Notificación sólo por Carta Certificada Correos de Chile
Dic. Notificación sólo por Carta Certificada Correos de Chile
 
T Ips Metodologia Formacion Proyectos 1
T Ips Metodologia Formacion Proyectos 1T Ips Metodologia Formacion Proyectos 1
T Ips Metodologia Formacion Proyectos 1
 
Acv en jovenes 2
Acv en jovenes 2Acv en jovenes 2
Acv en jovenes 2
 
Ley 19880
Ley 19880Ley 19880
Ley 19880
 
Base de datos relacional
Base de datos relacionalBase de datos relacional
Base de datos relacional
 
Manual dnc y planificacion formativa inab
Manual dnc y planificacion formativa inabManual dnc y planificacion formativa inab
Manual dnc y planificacion formativa inab
 
Resumen ley 19.880
Resumen ley 19.880Resumen ley 19.880
Resumen ley 19.880
 
El Trabajo en Equipo genera Calidad de Servicio en Archivos y Bibliotecas
El Trabajo en Equipo genera Calidad de Servicio en Archivos y Bibliotecas El Trabajo en Equipo genera Calidad de Servicio en Archivos y Bibliotecas
El Trabajo en Equipo genera Calidad de Servicio en Archivos y Bibliotecas
 
Estrutura organizacional 2012_01
Estrutura organizacional 2012_01Estrutura organizacional 2012_01
Estrutura organizacional 2012_01
 
Curso de Calidad Total
Curso de Calidad TotalCurso de Calidad Total
Curso de Calidad Total
 

Similar to 3 a5 valdez david - tarea 1.pptx

BASE DE DATOS RELACIONALES, DISTRIBUIDAS, ORIENTADA.pptx
BASE DE DATOS RELACIONALES, DISTRIBUIDAS, ORIENTADA.pptxBASE DE DATOS RELACIONALES, DISTRIBUIDAS, ORIENTADA.pptx
BASE DE DATOS RELACIONALES, DISTRIBUIDAS, ORIENTADA.pptxJose walter Vega Acebey
 
Una base de datos relacional
Una base de datos relacionalUna base de datos relacional
Una base de datos relacionalAlex Javier
 
Base de datos relacional
Base de datos relacionalBase de datos relacional
Base de datos relacionaldoc-92
 
Base de datos 22222
Base de datos 22222Base de datos 22222
Base de datos 22222krentiista
 
Construcción de base de datos
Construcción de base de datosConstrucción de base de datos
Construcción de base de datosjhovanaqg
 
Definiciones base de datos
Definiciones base de datosDefiniciones base de datos
Definiciones base de datosCamilo Tellez
 
En los recursos de la semana se pueden leer las reglas para planificar una ba...
En los recursos de la semana se pueden leer las reglas para planificar una ba...En los recursos de la semana se pueden leer las reglas para planificar una ba...
En los recursos de la semana se pueden leer las reglas para planificar una ba...Monytha Roman
 
Normalización de una base de datos
Normalización de una base de datosNormalización de una base de datos
Normalización de una base de datosReimer Xavier
 
Base de datos (.net)
Base de datos (.net)Base de datos (.net)
Base de datos (.net)7891089671
 

Similar to 3 a5 valdez david - tarea 1.pptx (20)

BASE DE DATOS RELACIONALES, DISTRIBUIDAS, ORIENTADA.pptx
BASE DE DATOS RELACIONALES, DISTRIBUIDAS, ORIENTADA.pptxBASE DE DATOS RELACIONALES, DISTRIBUIDAS, ORIENTADA.pptx
BASE DE DATOS RELACIONALES, DISTRIBUIDAS, ORIENTADA.pptx
 
Deber domynic
Deber domynicDeber domynic
Deber domynic
 
Una base de datos relacional
Una base de datos relacionalUna base de datos relacional
Una base de datos relacional
 
Base de datos relacional
Base de datos relacionalBase de datos relacional
Base de datos relacional
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos 22222
Base de datos 22222Base de datos 22222
Base de datos 22222
 
Construcción de base de datos
Construcción de base de datosConstrucción de base de datos
Construcción de base de datos
 
Definiciones base de datos
Definiciones base de datosDefiniciones base de datos
Definiciones base de datos
 
5 teoriadebasededatos
5 teoriadebasededatos5 teoriadebasededatos
5 teoriadebasededatos
 
G dbdd
G dbddG dbdd
G dbdd
 
G dbdd
G dbddG dbdd
G dbdd
 
G dbdd
G dbddG dbdd
G dbdd
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
En los recursos de la semana se pueden leer las reglas para planificar una ba...
En los recursos de la semana se pueden leer las reglas para planificar una ba...En los recursos de la semana se pueden leer las reglas para planificar una ba...
En los recursos de la semana se pueden leer las reglas para planificar una ba...
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
Normalización de una base de datos
Normalización de una base de datosNormalización de una base de datos
Normalización de una base de datos
 
Base de datos (.net)
Base de datos (.net)Base de datos (.net)
Base de datos (.net)
 
Presentación2
Presentación2Presentación2
Presentación2
 
Diagramas ER
Diagramas ERDiagramas ER
Diagramas ER
 
Grupo3
Grupo3Grupo3
Grupo3
 

3 a5 valdez david - tarea 1.pptx

  • 1. Es una herramienta para el modelado de datos que permite representar las entidades relevantes de un sistema de información así como sus interrelaciones y propiedades.
  • 2. Modelado Entidad-Relación Se elabora el diagrama (o diagramas) entidad- relación. Se completa el modelo con listas de atributos y una descripción de otras restricciones que no se pueden reflejar en el diagrama. 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
  • 3. Base de datos relacional Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo más utilizado en la actualidad para implementar bases de datos ya planificadas. Permiten establecer interconexiones (relaciones) entre los datos (que están guardados en tablas), y a través de dichas conexiones relacionar los datos de ambas tablas, de ahí proviene su nombre: "Modelo Relacional". Tras ser postuladas sus bases 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.
  • 4. Características Una base de datos relacional se compone de varias tablas o relaciones. No pueden existir dos tablas con el mismo nombre ni registro. Cada tabla es a su vez un conjunto de registros (filas y columnas). La relación entre una tabla padre y un hijo se lleva a cabo por medio de las claves primarias y ajenas (o foráneas). Las claves primarias son la clave principal de un registro dentro de una tabla y éstas deben cumplir con la integridad de datos. Las claves ajenas se colocan en la tabla hija, contienen el mismo valor que la clave primaria del registro padre; por medio de éstas se hacen las relaciones. Elementos Relaciones base y derivadas En una base de datos relacional, todos los datos se almacenan y se accede a ellos por medio de relaciones. Las relaciones que almacenan datos son llamadas "relaciones base" y su implementación es llamada "tabla". Otras relaciones no almacenan datos, pero son calculadas al aplicar operaciones relacionales. Estas relaciones son llamadas "relaciones derivadas" y su implementación es llamada "vista" o "consulta". Las relaciones derivadas son convenientes ya que expresan información de varias relaciones actuando como si fuera una sola.
  • 5. Restricciones Una restricción es una limitación que obliga el cumplimiento de ciertas condiciones en la base de datos. Algunas no son determinadas por los usuarios, sino que son inherentemente definidas por el simple hecho de que la base de datos sea relacional. Algunas otras restricciones las puede definir el usuario, por ejemplo, usar un campo con valores enteros entre 1 y 10. Las restricciones proveen un método de implementar reglas en la base de datos. Las restricciones limitan los datos que pueden ser almacenados en las tablas. Usualmente se definen usando expresiones que dan como resultado un valor booleano, indicando si los datos satisfacen la restricción o no. Las restricciones no son parte formal del modelo relacional, pero son incluidas porque juegan el rol de organizar mejor los datos. Las restricciones son muy discutidas junto con los conceptos relacionales. Dominios Un dominio describe un conjunto de posibles valores para cierto atributo. Como un dominio restringe los valores del atributo, puede ser considerado como una restricción. Matemáticamente, atribuir un dominio a un atributo significa "todos los valores de este atributo deben de ser elementos del conjunto especificado". Distintos tipos de dominios son: enteros, cadenas de texto, fecha,no procedurales etc.
  • 6. Clave única Cada tabla puede tener uno o más campos cuyos valores identifican de forma única cada registro de dicha tabla, es decir, no pueden existir dos o más registros diferentes cuyos valores en dichos campos sean idénticos. Este conjunto de campos se llama clave única. Pueden existir varias claves únicas en una determinada tabla, y a cada una de éstas suele llamársele candidata a clave primaria. Clave primaria Una clave primaria es una clave única elegida entre todas las candidatas que define unívocamente a todos los demás atributos de la tabla, para especificar los datos que serán relacionados con las demás tablas. La forma de hacer esto es por medio de claves foráneas. Sólo puede existir una clave primaria por tabla y ningún campo de dicha clave puede contener valores NULL.
  • 7. Clave foránea Una clave foránea es una referencia a una clave en otra tabla, determina la relación existente en dos tablas. Las claves foráneas no necesitan ser claves únicas en la tabla donde están y sí a donde están referenciadas. Por ejemplo, el código de departamento puede ser una clave foránea en la tabla de empleados. Se permite que haya varios empleados en un mismo departamento, pero habrá uno y sólo un departamento por cada clave distinta de departamento en la tabla de empleados. Clave índice Las claves índice surgen con la necesidad de tener un acceso más rápido a los datos. Los índices pueden ser creados con cualquier combinación de campos de una tabla. Las consultas que filtran registros por medio de estos campos, pueden encontrar los registros de forma no secuencial usando la clave índice. Las bases de datos relacionales incluyen múltiples técnicas de ordenamiento, cada una de ellas es óptima para cierta distribución de datos y tamaño de la relación. Los índices generalmente no se consideran parte de la base de datos, pues son un detalle agregado. Sin embargo, las claves índices son desarrolladas por el mismo grupo de programadores que las otras partes de la base de datos
  • 8. Procedimientos almacenados Un procedimiento almacenado es código ejecutable que se asocia y se almacena con la base de datos. Los procedimientos almacenados usualmente recogen y personalizan operaciones comunes, como insertar un registro dentro de una tabla, recopilar información estadística, o encapsular cálculos complejos. Son frecuentemente usados por un API por seguridad o simplicidad. Los procedimientos almacenados no son parte del modelo relacional, pero todas las implementaciones comerciales los incluyen. Estructura La base de datos se organiza en dos marcadas secciones; el esquema y los datos (o instancia). El esquema es la definición de la estructura de la base de datos y principalmente almacena los siguientes datos:
  • 9. El nombre de cada tabla El nombre de cada columna El tipo de dato de cada columna La tabla a la que pertenece cada columna Las bases de datos relacionales pasan por un proceso al que se le conoce como normalización, el resultado de dicho proceso es un esquema que permite que la base de datos sea usada de manera óptima. Los datos o instancia es el contenido de la base de datos en un momento dado. Es en sí, el contenido de todos los registros. Manipulación de la información Para manipular la información utilizamos un lenguaje relacional, actualmente se cuenta con dos lenguajes formales el álgebra relacional y el cálculo relacional. El álgebra relacional permite describir la forma de realizar una consulta, en cambio, el cálculo relacional sólo indica lo que se desea devolver.
  • 10. El lenguaje más común para construir las consultas a bases de datos relacionales es SQL (Structured Query Language), un estándar implementado por los principales motores o sistemas de gestión de bases de datos relacionales. En el modelo relacional los atributos deben estar explícitamente relacionados a un nombre en todas las operaciones, en cambio, el estándar SQL permite usar columnas sin nombre en conjuntos de resultados, como el asterisco taquigráfico (*) como notación de consultas. Al contrario del modelo relacional, el estándar SQL requiere que las columnas tengan un orden definido, lo cual es fácil de implementar en una computadora, ya que la memoria es lineal. Es de notar, sin embargo, que en SQL el orden de las columnas y los registros devueltos en cierto conjunto de resultado nunca está garantizado, a no ser que explícitamente sea especificado por el usuario.
  • 11. Normalización de bases de datos El proceso de normalización de bases de datos consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad-relación al modelo relacional. Las bases de datos relacionales se normalizan para: Evitar la redundancia de los datos. Evitar problemas de actualización de los datos en las tablas. Proteger la integridad de los datos. En el modelo relacional es frecuente llamar tabla a una relación, aunque para que una tabla sea considerada como una relación tiene que cumplir con algunas restricciones: Cada tabla debe tener su nombre único. No puede haber dos filas iguales. No se permiten los duplicados. Todos los datos en una columna deben ser del mismo tipo.
  • 12. Terminología relacional equivalente Relación = tabla o archivo Registro = registro, fila , renglón o tupla Atributo = columna o campo Clave = llave o código de identificación Clave Candidata = superclave mínima Clave Primaria = clave candidata elegida Clave Ajena (o foránea) = clave externa o clave foránea Clave Alternativa = clave secundaria Dependencia Multivaluada = dependencia multivalor RDBMS = Del inglés Relational Data Base Manager System que significa, Sistema Gestor de Bases de Datos Relacionales.
  • 13. 1FN = Significa, Primera Forma Normal o 1NF del inglés First Normal Form. Los términos Relación, Tupla y Atributo derivan del álgebra y cálculo relacional, que constituyen la fuente teórica del modelo de base de datos relacional. Todo atributo en una tabla tiene un dominio, el cual representa el conjunto de valores que el mismo puede tomar. Una instancia de una tabla puede verse entonces como un subconjunto del producto cartesiano entre los dominios de los atributos. Sin embargo, suele haber algunas diferencias con la analogía matemática, ya que algunos RDBMS permiten filas duplicadas, entre otras cosas. Finalmente, una tupla puede razonarse matemáticamente como un elemento del producto cartesiano entre los dominios. Dependencia
  • 14. Base teórica y conceptual El modelo de datos entidad-relación está basado en una percepción del mundo real que consta de una colección de objetos básicos, llamados entidades, y de relaciones entre esos objetos. Los lenguajes de programación que ofrece Entidad Representa una “cosa” u "objeto" del mundo real con existencia independiente, es los son tres a decir, se diferencia unívocamente de otro objeto o cosa, incluso siendo del mismo programadores para crear tipo, o una misma entidad. Algunos Ejemplos: Una persona. (Se diferencia de cualquier otra persona, inclusofunciones. Se sus propias siendo gemelos). puede programar Un automóvil. (Aunque sean de la misma marca, el mismo modelo,..., tendrán atributos diferentes, por ejemplo, el número de chasis). en Una casa (Aunque sea exactamente igual a otra, aún se diferenciará en su lenguaje C.O.F.F.E.E., un dirección). Una entidad puede ser un objeto con existencia física como: una persona, un animal, una casa, etc. (entidad concreta); o un de con existencia conceptual como: un objeto programación propio, puesto de trabajo, una asignatura de clases, un nombre,etc. (entidad abstracta). Una entidad está descrita y se representa por sus características lenguaje de Python - un o atributos. Por programación estándar o ejemplo, la entidad Persona las características: Nombre, Apellido, Género, Estatura, Peso, Fecha de nacimiento, etc... en C++ SDK.
  • 15. Atributos Los atributos son las características que definen o identifican a una entidad. Estas pueden ser muchas, y el diseñador solo utiliza o implementa las que considere más relevantes. Los atributos son las propiedades que describen a cada entidad en un conjunto de entidades. En un conjunto de entidades, cada 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, 38 años, 2) (2, Josefa, 19 años, 5) (3, Carlos, 20 años, 2) ...