SlideShare une entreprise Scribd logo
1  sur  35
Uso de Excel y Access para el desarrollo de
aplicaciones administrativas empresariales


            Administración de Base de Datos

Contenido

Conceptos básicos y su aplicación

El propósito de una base de datos

Ventajas al utilizar una base de datos

Definición de base de datos

Modelo Entidad- Relación

     Diagramas Entidad Relación (DER)

     Entidades, Atributos

     Descripción de relaciones

     Tipos de relaciones

Modelo de datos

     Lenguaje de definición de datos

     Lenguaje de manipulación de datos



Modelo relacional

     Relación matemática / Tabla relaciona

     Qué es una llave

     Qué es un esquema de base de datos relacional

     Reglas de integridad estructurales
Llave foránea



Diseño de un sistema que utiliza base de datos




Conceptos básicos y su aplicación

El área de bases de datos ha sido un área muy
importante dentro de la Ciencia de la Computación y
más recientemente como parte esencial de las
Tecnologías de Información. Al decir que el mundo vive
en la era de la información, lo primero que se viene a la
mente es el lugar donde se almacenan los datos
requeridos para producir información, las Bases de
Datos.

El propósito de una Base de Datos es:

  … ayudar a la gente y a las organizaciones a llevar un
  registro de las cosas, de aquellos objetos acerca de
  los cuales les interesa guardar datos. Estos datos son
  los que permitirán generar información de esas cosas
  u objetos. Para comprender por que es importante
  este almacenamiento de datos, se puede primero
  analizar   que   problemas   se   presenta   cuando   se
utilizan solo datos sin la estructura que ofrece una
Base de Datos:

 Al tener sistemas aislados, con diferentes medios
  en los cuales se almacena información, un mismo
  dato puede estar almacenado en diferentes lugares
 Al estar el mismo dato almacenado en diferentes
  lugares, puede tener diferentes valores en esos
  diferentes       lugares,    lo   que    puede      provocar
  inconsistencias, si no se logra tener esas copias
  con la información consistente
 La privacidad de datos se ve afectada, debido a
  que los departamentos necesitan compartir datos,
  pero no todos los que custodian, solo los que
  consideran pueden compartir, creando problemas
  al no contar con todo lo que necesitan, aunque la
  empresa pueda tenerlos disponibles.
 En contraste, las bases de datos almacenan los
  datos en tablas simples, donde cada una de ellas
  está   definida       para   apoyar     un   tema    o     área
  especifica. Esto permite mantener una definición
  sencilla,    y   un    uso   sencillo   de   la   tabla,    en
  consecuencia. Las tablas poseen una estructura
  que permite relacionarlas fácilmente entre si, a
  través del uso de llaves, o campos comunes, que
  permiten una navegación sencilla y natural a
través de ellas, siempre y cuando su diseño sea el
    correcto.



  En la siguiente figura se muestra lo que es una
  arquitectura de base de datos, donde se observa que
  los datos son independientes de los programas que
  los utilizan, lo que ofrece beneficios al eliminar los
  problemas de redundancia.

Las ventajas de utilizar una Base de Datos, a través del
software de administración, se puede entender
claramente en los siguientes casos:


  1. Una base de datos permite almacenar grandes
     volúmenes de datos, con un mínimo de datos
     duplicados. Esto permite tener un acceso rápido y
     eficiente a los mismos, cuando se requiere obtener
     información a partir de ellos. Al estar almacenados
     en un lugar común, es factible aplicar reglas de
     integridad, que permite validad sus consistencia.
  2. La información almacenada en una base de Datos
     se integra eficientemente, y no posee limitaciones
     impuestas por la organización de la empresa. Esta
     integración permite que los datos seas usados
     eficientemente, y con un mínimo de problemas de
     integridad, por diferentes usuarios y
     departamentos en toda la organización. Esto le
     ofrece como beneficio a un administrador tener
     acceso a datos a los cuales antes no tenía acceso,
     por estar almacenados en diferentes medios y
     sistemas.
3. Un beneficio muy importante se asocia a la calidad
   en los servicios de datos. La base de datos permite
   tener una durabilidad y permanencia de los datos
   que no es cuestionable. Otro aspecto relacionado a
   esta ventaja es que las transacciones que se
   ejecutan directamente sobre la base de datos
   quedan registradas permanentemente, lo que
   permite su acceso posterior, para cualquier
   consulta, o para la protección ante cualquier falla
   del sistema.
4. En teoría, una base de datos dura indefinidamente,
   hasta que se decide guardarla en un ambiente
   fuera del uso directo de un sistema, o se decide
   borrarla definitivamente.
5. La durabilidad de una base de datos permite la
   recuperación de los datos a un estado estable,
   antes de ocurrir la falla. Esto da la seguridad
   necesaria para ofrecer datos confiables a cualquier
   sistema de misión crítica de una empresa, como
   sería el sistema en línea de ventas, o en general,
   cualquier sistema en línea, tal como los que
   forman un negocio basado en Internet.
6. Un Sistema de Administración de Bases de Datos
   permite compartir los datos de una Base de Datos
   sencilla y eficientemente, a una comunidad de
   usuarios diferentes. Las vistas son el medio que el
   software de administración de base de datos
   ofrece para que un grupo de usuarios tenga acceso
   solo a la porción de la base de datos a la cual ellos
   tienen derecho de acceso. De la misma forma, para
   un equipo de desarrollo de una aplicación, una
   vista le permite el acceso a solo los datos que
   tienen derecho, de acuerdo a los requerimientos
   que el sistema bajo desarrollo debe resolver.
7. El acceso concurrente a los datos es otra de las
   ventajas. Este acceso permite que diferentes
   usuarios, a través de sus aplicaciones, accedan a
   los datos, mezclando sus operaciones, con la
seguridad que las mismas serán ejecutadas de tal
      forma que no se afecten negativamente entre si.
      Esta es una condición indispensable para el uso de
      una base de datos desde Internet.
   8. Finalmente, la seguridad. Este es un componente
      crítico en cualquier base de datos que puede ser
      accesada por Internet. Las técnicas de seguridad y
      métodos de acceso que una base de datos ofrece
      hoy soy de tal forma seguros que el uso es de tal
      forma natural para todos los que acceden
      directamente a la misma. Se previene el acceso no
      autorizado a la base de datos, los mensaje se
      encriptan de tal forma que es casi imposible
      decodificarlos. Con esto se ofrece un ambiente
      seguro, que permite trabajar de manera confiable
      con la base de datos.

Definición de Base de Datos

La Tecnología de Bases de datos es hoy un elemento común en la mayoría
de todas las aplicaciones de computadoras o tecnología de Información.,
sin importar el tipo de aplicación, o el giro de la compañía., sea un
sistema financiero en un banco, o un sistema de punto de venta en un
supermercado, o un sistema de control de producción en una empresa
manufacturera. En todos los casos elementos comunes de Tecnología de
Información son tanto las Bases de Datos como los Sistemas de
Administración de Bases de Datos requeridos

La gente interactúa normalmente con Bases de Datos, y sus tecnologías
asociadas. Para dejar en claro estos términos y tecnologías, se definen a
continuación, para aclarar los temas principales que se cubren en este
curso. Los términos a definir y que se usarán con esta definición en el
resto de curso son:

Datos.

Antes de definir que es una Base de Datos es primordial entender que es
un dato. Los datos son hechos, que sirven para describir a objetos, gente,
o eventos. Son la materia prima utilizada para producir información.
Base de Datos.

   Para hablar de una definición de base de datos se debe primero
   entender algunos requerimientos que deben ser resueltos:

      La necesidad de compartir datos, entre diferentes usuarios, y que
      los datos presenten una relación entre ellos, y que estén diseñados
      para cumplir las necesidades de información de la empresa, y de
      sus diferentes partes que la forman
      Una definición de los datos integrada, que ofrezca una definición de
      los mismos, para poder tener la independencia requerida entre los
      datos de la empresa, y los programas de aplicación que los van a
      utilizar
      Se requiere de un modelo que represente los datos de la empresa,
      compuesta comúnmente por entidades, atributos, y relaciones



Esto permite tener la primera definición de una base de datos:

Es una colección integrada, de datos relacionados. Dicho de otra forma:
colección auto descrita de registros relacionados o tablas. Algunos de sus
componentes son:

         – Datos del usuario
         – La Metadata, o datos acerca de la estructura
            de la base de datos misma
         – Indices y estructuras de datos relacionadas
         – Procedimientos               almacenados              (Stored
            procedures),         o     programas         o       módulos
            almacenados dentro de la base de datos, y que
            sirven para su manipulación
         – Triggers, o procedimientos que se ejecutan
            cuando ocurre un evento o actividad particular
            sobre la base de datos
– Metadata        de     aplicaciones,       o    datos      que
           permiten describir las aplicaciones que se
           ejecutan sobre la base de datos

Dos características son esenciales en la definición de
una Base de Datos:

   Datos relacionados.
      – Esta característica implica el que los datos representan
         hechos, relacionados lógicamente, acerca de aspectos del
         mundo real que son de interés para el área que apoya una
         aplicación. Por ejemplo, los datos que se necesitan en una
         Base de Datos orientada al área de administración de una
         empresa, en la cual se manejan datos de: clientes, pedidos que
         los clientes realizan, los artículos que los pedidos incluyen, el
         surtido de los pedidos, la facturación a los clientes de sus
         pedidos entregados, los pagos que los clientes realizan sobre
         sus facturas, etc. Lo mismo se puede hacer para describir los
         datos que se manejan en el área de manufactura de una
         empresa.
   Datos integrados.
      – Esta característica implica que los datos para múltiples
         aplicaciones se almacenan juntos, y pueden ser manipulados
         de igual forma por dichas aplicaciones. Al estar almacenados
         juntos, los datos puedes compartirse, permitiendo que
         múltiples aplicaciones las utilicen, sin hablar de fronteras,
         que establecen normalmente barreras artificiales para este
         uso compartido. Un buen ejemplo es la información que se
         genera cuando un área de la empresa registra la información
         de una orden interna para compra de un producto. Esta
         información es compartida y utilizada por el área interna de
         compras, que genera una orden de compra al proveedor,
         quien surte la orden que será recibida en el almacén, y cuya
         información comparte con contabilidad, que la requiere para
         sus registros. Las cuentas por pagar atienden las facturas de
         los proveedores, en base a la información de los pedidos
entregados. Esto ejemplifica la necesidad y la facilidad para
      compartir estos datos.




Ventaja del enfoque de uso de una base de datos

Un beneficio muy importante asociado al uso de loas
bases de datos es:

    El acceso controlado a los datos. Esto redunda
    en beneficios asociados por el uso de
      o Un sistema de seguridad, que permita el uso
         de la base de datos solo por el personal
         autorizado para el uso de la base de datos.
      o Un sistema de control de la integridad, que
         permita que los datos almacenados cumplan
         con las reglas de integridad definidas para
         los mismos, y que garanticen a su ves la
         integridad y consistencia de la base de
         datos
      o Un sistema de control de concurrencia., que
         permita      la    ejecución       de     transacciones
         concurrentes sobre la base de datos, sin
         perder       la    integridad        de     los     datos
         almacenados.
o Un sistema de recuperación, que permita
           que la base de datos sea restablecida a un
           estado correcto o válido de la base de datos,
           justo antes de que una falla interrumpiera
           su uso por parte de los programas de
           aplicación
         o Un mecanismo de vistas, que permita a los
           usuarios solo acceder a los datos que ellos
           necesitan usar.

De la discusión de los conceptos de bases de datos se
desprende la importancia de hablar de un Sistemas de
Administración Bases de Datos, por lo que se incluye
este concepto, para su discusión a la luz del concepto
de bases de datos. Este concepto será posteriormente
presentado.
Modelo Entidad – Relación

Para la creación de una base de datos es necesario
contar primero con el modelo de datos que permita
crearla. El modelo de datos, como abstracción de la
realidad, es la herramienta utilizada para la
representación de las entidades y los atributos que las
describen, asi como las relaciones entre ellas. Este
modelo sirve como base para poder crear una base de
datos. El enfoque de modelación mas usado es el
modelo Entidad-Relación.

El modelo entidad-relación (E-R) se basa en percibir y
modelar el mundo real en base a elementos básicos de
construcción: entidades y relaciones entre ellas, así
como atributos que permiten describir a ambos
elementos. De todo lo anterior se deduce que el punto
clave en la construcción de la base de datos será el
modelo de datos.

Con la modelación de los datos requeridos por una base
de datos se logra:

  1. Formalización: definir formalmente las estructuras
     permitidas y las restricciones a fin de representar
     los datos que requiere una aplicación, y la base de
     datos requerida
  2. Diseño: el modelo resultante es la materia prima
     esencial para el diseño de la base de datos.

El modelo de Entidad Relación, fue propuesto por Peter
Chen, en 1976. Usado como el modelo sobre el cual se
define el modelo de datos requerido por una aplicación.

Crea un modelo de datos en términos de: entidades,
sus atributos y asociaciones entre las ocurrencias de
sus entidades, llamadas relaciones (Relationships).

Se proponen 3 clases de objetos:
• Entidades
         • Atributos
         • Relaciones

Entidades:

• Objetos principales acerca de los cuales se almacena
información.
• Cosas de importancia o interés para un área de
negocios o para un sistema que requiere del
almacenamiento de datos.
• Ejemplos: Cliente, Producto, Inventario, Proveedor,
Factura




Las entidades se clasifican en Fuertes y Débiles

• Entidad Fuerte: Posee un identificador que determina de manera única
a las ocurrencias de la entidad. Tiene existencia propia, que no depende
de la existencia de otras entidades. Se representa:




• Entidad Débil: Deriva su existencia de los atributos que son
identificadores de una o más entidades padres.Su existencia está limitada
o determinada por la existencia de las entidades padres. Se representa:
Atributos:

   Describen a las entidades.
   Representan características o cualidades de una entidad.
   Ejemplos: nombre de una persona, nombre de ciudad, número de
   empleado, fecha de contratación, monto a pagar .

   Los atributos se representan de la siguiente forma:

   Identificador: identifican de manera única a cada ocurrencia de la
   entidad.




Descriptor:

Describen una característica o cualidad de la entidad



Representación de las relaciones:

• Permiten representar diferentes tipos de asociaciones entre las
entidades.

• Tienen ‘semántica’, es decir, describen información acerca de la forma
en que se asocian las entidades.

• Se representan así:

(existen múltiples formas de representarlas)

Diagramas de Entidad relación (DER)
Propósito:

• Mostrar las Entidades y cómo éstas se relacionan.
• El DER se concentra sólo en las entidades de datos

Ejemplo de construcción de un Diagrama de Entidad Relación

Pregunta inicial:¿Cuáles son las entidades de interés acerca de las cuales
se desea almacenar datos ?
• Para un negocio comercial podrían ser:CLIENTES, PRODUCTOS,
INVENTARIO, PROVEEDORES, FACTURAS, ORDENES DE
COMPRA.
Construcción:
•     Dibujar un bloque para cada entidad identificada.
•     Nombres de las entidades:
      se recomienda que sean en singular
      Ejemplo: CLIENTE en lugar de CLIENTES.
•     Siguiente pregunta:
      ¿ Cuál relación existe entre cada par de entidades ?
Ejemplos:
      Un CLIENTE se puede asociar con muchas FACTURAS, y cada
FACTURA puede ser sólo asociada a un CLIENTE.




Tomando PRODUCTO y FACTURA:
    Un PRODUCTO puede asociarse con muchas FACTURAS, y una
FACTURA puede ser asociada a muchos PRODUCTOs.




Tomando PRODUCTO e INVENTARIO:
      Un PRODUCTO puede asociarse con una ocurrencia de
INVENTARIO, y una ocurrencia de INVENTARIO puede ser asociada a
un solo PRODUCTO.
Representación:
Entidades en un solo diagrama :




¿Qué pasa con respecto al nombre de las relaciones?

Concepto importante acerca del análisis ER:    una relación muchos-a-
muchos puede ser dividida en 2 relaciones uno-a-muchos, identificando la
"entidad intersección".
Por ejemplo:
      La relación muchos-a-muchos entre PRODUCTO y FACTURAs




Puede ser vista como dos relaciones 1 a muchos:




Se añade una entidad "intersección" entre las dos originales:
Pregunta:
¿ Qué permite asociar a un PRODUCTO con muchas FACTURAS, o a
una FACTURA con muchos PRODUCTOs ?

Una respuesta: ARTICULO-VENDIDO, o DETALLE-FACTURA




Para la relación muchos-a-muchos entre PRODUCTOs y
PROVEEDOREs:
Otra entidad: "ENVIO-PRODUCTO" , cualquier proveedor puede surtir
cualquier producto




Para cada relación uno-a-uno:
Se pregunta si las dos entidades son realmente entidades separadas, o
pueden ser combinadas.
Ejemplo: Entre PRODUCTO e INVENTARIO no existe una razón
importante para mantener una entidad separada describiendo el
inventario.




Diagrama de Entidad relación, resuelto:
EJERCICIO:

¿ Es una FACTURA una entidad, o es una relación entre un CLIENTE y
un PRODUCTO ?
Es posible encontrar argumentos para apoyar a ambos puntos de vista.
Condición clave para la diferenciación:
      Si se puede definir un atributo identificador, es una entidad
      Si no se le puede encontrar un atributo identificador y asocia otras
      entidades, es una relación


Al analizar cada par de entidades, se pregunta por sus relaciones. Si
existen, deben ser clasificadas de acuerdo a los siguientes tipos de
relaciones:




   " Cada División es administrada por uno, y solo un Gerente"
   " Cada Gerente administra una, y solo una División"
"Cada Cliente puede tener una o más facturas con la empresa"
"Cada factura se asigna a un solo cliente"




   " Cada proveedor suministra uno o más productos"
   " Cada producto es suministrado por uno o más proveedores"

EJERCICIO:
¿ Es una FACTURA una entidad, o es una relación entre un CLIENTE y
un PRODUCTO ?
Es posible encontrar argumentos para apoyar a ambos puntos de vista.
Condición clave para la diferenciación:
      Si se puede definir un atributo identificador, es una entidad
      Si no se le puede encontrar un atributo identificador y asocia otras
      entidades, es una relación

Descripción de Relaciones

Al analizar cada par de entidades, se pregunta por sus relaciones. Si
existen, deben ser clasificadas de acuerdo a los siguientes tipos de
relaciones:
" Cada División es administrada por uno, y solo un Gerente"
   " Cada Gerente administra una, y solo una División"




"Cada Cliente puede tener una o más facturas con la empresa"
"Cada factura se asigna a un solo cliente"




   " Cada proveedor suministra uno o más productos"
   " Cada producto es suministrado por uno o más proveedores"

Relación obligatoria:

Una entidad puede estar relacionada en todas sus ocurrencias.
     Ejemplo: DEPARTAMENTO y EMPLEADO
     un DEPARTAMENTO debe estar asociado a uno o varios
empleados que trabajan en él.
     Un EMPLEADO debe estar asociado a uno y solo un
DEPARTAMENTO
Es incorrecto tener ocurrencias de una entidad sin ocurrencias de
la otra.
       Representación:           obligatoria




Tipos de relaciones

Relación opcional:

Dos entidades pueden estar relacionadas, pero no en todas sus
ocurrencias.
•    Ejemplo: EMPLEADO y PROYECTO.
         o Un empleado puede estar asignado a un proyecto, a algunos
            proyectos o a ninguno.
         o Un proyecto puede estar autorizado, y no tener empleados
            asignados.
Representación:                   opcional




Relación Unitaria

Una entidad puede estar relacionada consigo misma.
Ejemplo:



                              Es jefe de



               Le reporta a
               aaaaaaa
"Un empleado puede ser jefe de cero o más empleados" o
"Un empleado siempre reporta a otro empleado"
Sistema de Administración de Base de Datos.

  Un Sistema de Administración de Base de Datos, o DBMS, (por sus
  siglas en inglés, Database Management System) es de manera sencilla,
  software para la creación y administración de bases de datos, y sus
  sistemas asociados, en una computadora.

   Las funciones principales de un DBMS son:
       – La creación de bases de datos, sus tablas componentes, y las
          estructuras de apoyo asociadas
       – Permitir la lectura y escritura de los datos almacenados en
          una base de datos
       – Permitir el mantenimiento a las estructuras de una base de
          datos
       – Forzar el cumplimiento de las reglas de integridad definidas
          para una base de datos
       – Mantener el control de concurrencia a los datos, cuando se
          presenta la ejecución concurrente de transacciones a la base
          de datos
       – Ofrecer los mecanismos de seguridad para el acceso a las
          bases de datos definidas y mantenidas en el DBMS
       – Ofrecer las facilidades de respaldo y recuperación de las
          bases de datos, necesarias para garantizar la seguridad e
          integridad de las bases de datos manejdas por el DBMS
   Ejemplos de DBMSs comerciales: Oracle, DB2, Microsoft Access,
    SQL Server

Que es una Base de Datos Relacional

Un sistema de Administración de Bases de Datos
permite que los datos permanezcan independientes de
los programas de aplicación que los manipula. Esta es
una característica muy importante, por todos los
beneficios que le ofrece a quien desarrolla programas
para accesarlos. Esta característica recibe diferentes
nombres, tales como independencia de datos, o
independencia lógica. Esta independencia se logra a
través de un proceso de abstracción de datos, que
permite definir a los mismos de manera abstracta,
independiente de la tecnología en la cual la base de
datos llegara a implantarse.

Para lograr lo anterior, un concepto fundamental de la
abstracción de datos en bases de datos es el concepto
de un modelo de datos, el cual permite definir los
requerimientos de datos de un área de la empresa,
mucho antes de pensar en como representarlos en
tecnología.

El modelo de datos entonces define a los datos de tal
forma que se organizan para ser manipulados en la
base de datos. Este módulo permite introducir el
concepto de Bases de Datos Relacionales, y la forma en
la cual los datos se pueden definir para ser
representados en base a relaciones matemáticas, o
relaciones, esencia del modelo relacional. La forma
natural de representar una relación es en base a una
tabla, o representación tabular de las relaciones.

El modelo relacional es el modelo de datos que soporta
a la mayoría de los productos de bases de datos en el
mercado actual. Es un modelo formal, basada en las
matemáticas, en su concepto de relación matemática y
en la teoría de conjuntos. El contenido de este módulo y
el siguiente presentan los conceptos y términos que se
presentan a continuación:

    Relaciones matemáticas o tablas relacionales
    Llaves, primaria, alterna, foránea
    Diseño de bases de datos relacionales
    Normalización

Que es un Modelo de Datos

Un concepto muy importante y fundamental para
hablar de abstracción de datos en el área de bases de
datos es el modelo de datos. Un modelo de datos
permite representar los requerimientos de datos de un
área bajo análisis en una forma organizada, para
facilitar su representación en un producto de bases de
datos, y posteriormente su manipulación.

Un modelo de datos se forma de:

    Elementos de modelación, que permiten definir la
    estructura de los datos, tales como tipos de datos,
    dominios, y reglas de integridad. (DDL)
    Operaciones para poder actualizar y consultar la
    base de datos. (DML)

Que es un Lenguaje de Definición de Datos (DDL). Son
los elementos de modelación que permiten definir el
metadata de la base de datos, es decir, los datos acerca
de los datos, que se almacenan en el DBMS, en el
catálogo del sistema.

Que es un Lenguaje de Manipulación de Datos (DML).
Son las operaciones que permiten el acceso a la base de
datos para actualización y consulta a los datos de la
base de datos, y poder resolver cualquier consulta que
los usuarios requieran de la misma.

El uso de un modelo de datos en la creación de una
Base de Datos

Para la creación de una base de datos es necesario
contar primero con el modelo de datos que permita
crearla. (Modelo de Entidad – Relación)
Que es el modelo relacional

El modelo relacional fue propuesto por E.W. Codd en
1970. Es actualmente el modelo que soporta a la gran
mayoría de los sistemas de bases de datos de la
actualidad. El modelo provee características únicas de
modelación, que permiten crear modelos de datos
relacionales, con relativa facilidad.

El modelo Relacional ofrece las siguientes ventajas:

    Los datos se representan en relaciones, cuya
    manera natural de representación es en forma de
    tabla bidimensional. Esta representación es muy
    simple de entender y visualizar, además de que es
    conocida y utilizada en muchas formas de trabajo
    de la vida diaria, tanto en la escuela como en el
    trabajo.
    Un ejemplo de una tabla relacional se presenta a
    continuación:

    Alu                                       Fecha
    mno Matrí Nom Apelli Ciuda Est              de
                                     Carrera
         cula bre    do     d   ado          Nacimi
                                               ento
                                    Ing. En
        4517             Monte               21/01/
              José Pérez        NL Electró
        5                rrey                1980
                                    nica
                                    Ing. En
        4655       Martí Hermo SO            12/06/
              Luis                  Comput
        0          nez sillo    N            1981
                                    ación
                                    Lic. En
        4712 Ren Gonz           ME           13/09/
                         Toluca     Econom
        3     é    ález         X            1992
                                    ía
Es un modelo formal de datos, característica que lo
    diferencia de los otros modelos.
    Es un modelo basado en las matemáticas, en el
    concepto de relación matemática y en teoría de
    conjuntos.
    La manera natural de representar una relación es
    en forma de tabla, que permite una
    conceptualización y explicación sencilla de este
    concepto.
    Además, por ser un concepto matemático, las
    tablas que forman una base de datos relacional son
    manipuladas con muchas ventajas por operadores
    matemáticos muy sencillos y poderosos, el álgebra
    y el cálculo relacional. A partir de estos operadores
    es muy sencillo resolver cualquier consulta que un
    usuario requiera. Estos lenguajes, conjuntos de
    operadores, están presentes en el SQL, lenguaje
    estándar para la manipulación de Bases de Datos
    relacionales comerciales.



La teoría que soporta a las bases de datos relacionales
es muy formal, matemática. Por esta razón, es
importante conocerla para tener un entendimiento que
permita obtener el máximo aprovechamiento de ésta.
Los conceptos que se presentan en este apartado deben
permitir que se aproveche al máximo la tecnología, por
lo que su entendimiento es indispensable. Se presentan
esos conceptos a continuación.


Que es una Relación Matemática/Tabla relacional

Un elemento fundamental en el modelo relacional es el
concepto de relación matemática, o tabla relacional.
Una relación o tabla relacional, en su forma más simple,
es un conjunto de renglones (también conocidos como
tuplas, registros, ocurrencias, o instancias).

De una manera mas formal, es el conjunto de tuplas, o
renglones, formados por un conjunto de valores
tomados a partir de “n” diferentes dominios. Se puede
expresar de la siguiente manera:

Relación R:

    Dado un conjunto de “n” dominios, D1 a Dn, una
    relación R se define como el conjunto de tuplas
    ordenadas, denotadas como <d1, d2, …, dn>
    donde cada tupla es formada tomando un valor de
    cada uno de los dominios
    Se denota asi: R = {<d11, d21, …, dn1>1, <d12,
    d22, …, dn2>2, …, <d1m, d2m, …., dnm>m }

Por ejemplo, en la tabla relacional ALUMNO, cada
renglón corresponde a los datos de un alumno en
particular. La tabla o relación contiene entonces los
renglones que representan los datos de los alumnos en
una escuela.

Cada uno de los datos almacenados en un renglón
representa el valor de un atributo, para cada atributo
que forma una tabla relacional. En la tabla de alumno,
los atributos que describen a la tabla o relación son:
Matrícula, Nombre, Apellido, Ciudad, Carrera y Fecha de
Nacimiento.

Finalmente, cada columna de la tabla relacional, cada
atributo, contiene los valores del atributo para cada
uno de los renglones u ocurrencias de la tabla. Los
valores que un atributo puede tomar se conocen como
el dominio del atributo, y es muy importante su
definición, ya que permite cuidar las reglas de los
valores válidos en un atributo.
Cada tabla debe tener entonces la siguiente definición:

    Nombre de la tabla
    Nombre para cada columna o atributo que forma la
    tabla
    El dominio sobre el cual está definido cada uno de
    los atributos que forman la tabla.

Características de una tabla relacional

Una tabla relacional es una tabla bidimensional que
posee la siguientes características:

    Los renglones poseen datos acerca de una entidad,
    entendiendo como entidad a algo acerca de lo cual
    se desea almacenar datos.
    Las columnas contienen datos acerca de los
    atributos de la entidad.
    Cada posición en la tabla almacena un valore
    simple, atómico, de un atributo
    Todos los valores almacenados en una columna
    son del mismo tipo, es decir, están definidos sobre
    el mismo dominio
    Cada columna o atributo debe poseer un nombre
    único
    El orden de las columnas no es relevante
    El orden de los renglones no es relevante
    No pueden existir dos renglones idénticos en la
    tabla
    Se utiliza el nombre de tabla relacional, en lugar de
    relación, para evitar confundir con el nombre que
    se le da a una relación en el sentido natural del
    Español, es decir, la asociación entre elementos,
    aunque es importante aclarar que no todas las
    tablas son relaciones
    Los siguientes términos se utilizan de manera
    equivalente, para referirse a términos comunes en
    el área de Bases de Datos: Tabla/renglón/columna
= archivo/registro/campo =
      relación/tupla/atributo
      El grado de una relación es el número de columnas
      o atributos de la misma y no puede ser cero, una
      tabla no puede existir sin columnas.
      La cardinalidad de una tabla es el número de
      renglones o tuplas en la tabla.



Que es una Llave

   Una llave está formada por uno o más atributos que permiten
   identificar de forma única a cada tupla o renglón en una tabla
   relacional. Una llave compuesta es una llave que está formada por dos
   o más atributos.

   Además:
    Una tabla relacional puede tener solo una llave primaria, pero
     pueden tener llaves adicionales, que son llamadas llaves candidatas
     o alternas
    Una llave primaria se usa para
        – Establecer relaciones entre diferentes tablas
        – Permiten organizar la forma en que las tablas se almacenan
        – Son usadas para generar índices, mecanismos usados para el
            acceso eficiente a los datos

Llave primaria

 En tablas en las cuales existe más de una llave, se selecciona a una de
ellas, como la llave con la cual se realizan búsquedas o con la cual se
establecen relaciones entre las tablas. Este es el caso de la llave primaria.
Las llaves restantes son llamadas llaves alternas o secundarias.

La selección de la llave primaria se considera normalmente sobre la base
de ser la llave más pequeña, aunque no es una condición absoluta. El caso
de una llave compuesta, que consiste de varios atributos, es mucho más
compleja de manejar como llave primaria, por ejemplo.
Que es un Esquema de Base de Datos Relacional

Un esquema de base de datos relacional es un conjunto de definiciones de
tablas relacionales, y un conjunto de reglas o restricciones de integridad.

La definición de tablas relacionales procede de definir los requerimientos
de un área de aplicación. Las reglas de integridad definen todas aquellas
condiciones, o restricciones, que los datos deben cumplir, para mantener
la integridad de los datos, y su valor.

Las reglas de integridad se agrupan en:

      Estructurales, que son específicas al modelo de datos relacional.

      Semánticas, que son específicas a la aplicación, impuestas por las
      reglas de negocio que la aplicación misma pide cumplir. Un ejemplo
      puede ser las condiciones que una empresa puede requerir para la
      contratación de un empleado, y que el sistema debe cumplir, lo que
      impone reglas que los datos de la base de datos debe cumplir.

Las reglas de integridad en una base de datos permiten
que la información almancenada en la misma posea la
consistencia e integridad requerida por sus usuarios.
Estas reglas provienen de la definición misma del
modelo relacional, pero están dirigidas a que su
cumplimiento garantice que los datos sean correctos, o
consistentes.

Por su importancia es indispensable que se conozca
sobre las mismas, que se definan en la creación de la
base de datos, y que el acceso a la base de datos
cumpla con ellas. A continuación se presentan las bases
del manejo de reglas de integridad, para que se busque
su cumplimiento.

Reglas de Integridad Estructurales del Modelo
Relacional:

   1. Regla de Integridad de Dominio. Hace referencia a
      que los valores de los datos deben ser atómicos. El
dominio de cada atributo debe estar compuesto de
     valores atómicos, por lo tanto no puede ser un
     valor compuesto de otros valores más simples,
     como un arreglo, o un registro de valores. Si se
     requiere almacenar una dirección por ejemplo,
     será necesario separar en diferentes atributos,
     como Calle, número, colonia, ciudad.
  2. Regla de Integridad de Llave. Establece que la
     llave de una entidad debe ser única.

    Regla de Integridad de entidad: Establece que no
    se permite un valor nulo, como parte de una llave
    primaria. El valor nulo es permitido para todos los
    dominios, y se utiliza para cuando el valor del
    atributo no está definido, o no aplica, y el dominio
    definido para el atributo lo permite. Por ejemplo, el
    dominio de NumeroDeEmpleadoDelJefe en la tabla
    de Empleados, cuando se trabaja en el registro del
    director de la empresa., y el valor de este número
    no aplica para el director. Se almacena entonces
    un NULO.

  3. Regla De Integridad referencial: Las referencia de
     una tabla a otra tabla debe ser con valores de
     llaves consistentes.



Que significa la regla de Integridad referencial
La regla de integridad referencial sirve para forzar que
las relaciones entre tablas, que se establecen mediante
llaves, mantengan siempre datos consistentes entre las
mismas.

Las relaciones entre las tablas se establecen entre
renglones de una tabla con renglones en la segunda
tabla. Estas relaciones se establecen mediante las
llaves, donde la llave primaria de una tabla se replica
en otra tabla, para establecer la relación. La replica de
la llave primaria en otra tabla, recibe el nombre de llave
foránea (foreign key).

Que es una llave foránea

Una llave foránea (FK) es uno o mas atributos en una
tabla, que son la llave primaria en otroa tabla, inclusive
la misma. La llave foránea debe cumplir con:

  1. Los atributos que forma la FK deben estar
     definidos en los mismos dominios que los atributos
     que forman la PK relacionada a la FK. La condición
     hace referencia a que los valores deben coincidir
     entre la FK y la PK, no sobre los nombres de los
     atributos, por lo cual los nombres en ambas llaves
     pueden ser diferentes.
  2. El valor de la FK en un renglón de la tabla, debe
     coincidir con un valor de la PK en la otra tabla, o
     ser un valor NULO. Esto garantiza que la
     información es consistente entre las tablas que
     mantienen una relación entre ellas.

Para mostrar estas relaciones en un diagrama, se
dibuja una flecha que va de la FK a la PK, mostrando la
relación entre ambas tablas. En el siguiente ejemplo se
muestra la relación existente entre Ventas realizadas a
los clientes, la llave foránea es ID Cliente en la tabla
Ventas
En general, las reglas de integridad referencial pueden
ser definidas entre dos tablas, en cualquier dirección, e
inclusive pueden ser definidas entre ocurrencias o
renglones de la misma tabla.

Ejemplo: ¿qué relaciones se pueden definir entre un
departamento académico y los profesores que trabajan
en él?

Un departamento académico se asocia con los
diferentes profesores que trabajan en él. Por otro lado
un profesor es jefe o director de un departamento
académico.
Diseño de un Sistema que utiliza una Base de Datos

El diseño de una base de datos relacional puede seguir
diferentes caminos.

La primera opción toma como base la observación del
mundo real bajo estudio, generando un conjunto de
tablas, que contengan los atributos y las restricciones
de integridad sobre las mismas.

Otra opción es dividir el diseño en dos fases:

    definir el modelo conceptual y su esquema,
    transformar el esquema conceptual en un esquema
    relacional mediante un conjunto de reglas de
    transformación

Aunque la normalización es una base muy importante
para el diseño de una base de datos, este diseño no
puede limitarse a la aplicación exclusiva de la teoría de
la normalización.

El diseño de una base de datos, por otro lado, tiene
múltiples puntos de vista, y formas de desarrollarse, de
acuerdo a esos puntos de vista. Para este curso, la idea
del diseño es que se convierta en un proceso práctico,
que facilite el proceso de diseño.

En base a esos puntos de vista, un proceso de diseño
práctico, incluye las siguientes fases:

Fase 0: Análisis de requerimientos. (No forma parte del
proceso de diseño)
Aunque esta fase realmente corresponde a la fase de
análisis de un proyecto, se presenta con el fin de
establecer que de esta fase se obtiene la materia prima
para el diseño de la base de datos. De esta fase
entonces se requiere obtener los requerimientos de
datos que el sistema bajo análisis ha formalizado. El
documento de análisis, en la parte de requerimientos
de datos, es entonces la entrada al proceso de diseño.

Fase 1: Diseño conceptual de la base de datos
Esta fase puede ser considerada tanto parte de la fase
de análisis de requerimientos, como parte de la fase de
Diseño. Es decir, para algunos puede formar parte del
análisis de requerimientos, donde el producto de esta
fase es el modelo de datos construido en base a una
herramienta específica. Para otros, esta actividad
corresponde a la fase de diseño de software,
específicamente, del diseño de la base de datos. Para
este caso se considera parte del diseño de la base de
datos.

Esta fase corresponde a la definición del esquema
conceptual, que es el esquema que define el modelo de
datos a alto nivel, independiente de cualquier sistema
de administración de bases de datos. Por ser un modelo
abstracto, no puede utilizarse para definir la estructura
de la base de datos.

Fase 2: fase de diseño lógico (Transformación del
modelo de datos o esquema conceptual, al SMBD a
utilizar).
En esta fase se transforma la salida del diseño
conceptual, o esquema conceptual, al esquema de la
base de datos en el modelo de datos del DBMS a utilizar

Fase 3: Diseño de la base de datos física.
Consiste en definir las estructuras de almacenamiento y
de acceso para alcanzar una rendimiento óptimo de las
aplicaciones que se ejecutarán sobre la base de datos.
Se tienen diferentes criterios para la definición de la
base de datos física: el tiempo de respuesta de
ejecución de las aplicaciones y consultas a la base de
datos, la utilización del espacio de almacenamiento
disponible o el volumen de transacciones por minuto,
que se ejecutan sobre la base de datos

Estas fases son genéricas, por lo que deben revisarse
para el caso particular de cada empresa.

Contenu connexe

Tendances

Taller n1 base de datos 2010
Taller n1 base de datos 2010Taller n1 base de datos 2010
Taller n1 base de datos 2010
alvaro hernan
 
Unidad1 introduccion base de datos
Unidad1 introduccion base de datosUnidad1 introduccion base de datos
Unidad1 introduccion base de datos
jupiespe
 
Sistema de base de datos
Sistema de base de datosSistema de base de datos
Sistema de base de datos
Alfredo Rueda
 
1. sistemas de administración de bases de datos 2007
1. sistemas de administración de bases de datos 20071. sistemas de administración de bases de datos 2007
1. sistemas de administración de bases de datos 2007
jhonj95
 
Bbdd a up_conceptos_fundamentales
Bbdd a up_conceptos_fundamentalesBbdd a up_conceptos_fundamentales
Bbdd a up_conceptos_fundamentales
Edwin Quintanar
 

Tendances (20)

TIPOS DE BDD Y SGBD
TIPOS DE BDD Y SGBDTIPOS DE BDD Y SGBD
TIPOS DE BDD Y SGBD
 
Base de datos (william mata 26550902)
Base de datos (william mata 26550902)Base de datos (william mata 26550902)
Base de datos (william mata 26550902)
 
Sistemasinformacion
SistemasinformacionSistemasinformacion
Sistemasinformacion
 
Taller n1 base de datos 2010
Taller n1 base de datos 2010Taller n1 base de datos 2010
Taller n1 base de datos 2010
 
Primera clase
Primera clasePrimera clase
Primera clase
 
Unidad1 introduccion base de datos
Unidad1 introduccion base de datosUnidad1 introduccion base de datos
Unidad1 introduccion base de datos
 
TIPOS DE BDD Y SGBD
TIPOS DE BDD Y SGBDTIPOS DE BDD Y SGBD
TIPOS DE BDD Y SGBD
 
Guia base de datos
Guia base de datosGuia base de datos
Guia base de datos
 
Clase doce 2011
Clase doce  2011Clase doce  2011
Clase doce 2011
 
Guia de base de datos unidad 1 por lissette
Guia de base de datos unidad 1 por lissetteGuia de base de datos unidad 1 por lissette
Guia de base de datos unidad 1 por lissette
 
Taller 1 2-3
Taller 1 2-3Taller 1 2-3
Taller 1 2-3
 
Sistema de base de datos
Sistema de base de datosSistema de base de datos
Sistema de base de datos
 
Presentacion de fundamentos de bd
Presentacion de fundamentos de bdPresentacion de fundamentos de bd
Presentacion de fundamentos de bd
 
Monografía tipos-de-bdd-y-sgbd-10%
Monografía tipos-de-bdd-y-sgbd-10%Monografía tipos-de-bdd-y-sgbd-10%
Monografía tipos-de-bdd-y-sgbd-10%
 
1. sistemas de administración de bases de datos 2007
1. sistemas de administración de bases de datos 20071. sistemas de administración de bases de datos 2007
1. sistemas de administración de bases de datos 2007
 
Tutorial de bd
Tutorial de bdTutorial de bd
Tutorial de bd
 
Actividad 1.1 Cuestiones sobre conceptos básicos de SGBD.
Actividad 1.1 Cuestiones sobre conceptos básicos de SGBD.Actividad 1.1 Cuestiones sobre conceptos básicos de SGBD.
Actividad 1.1 Cuestiones sobre conceptos básicos de SGBD.
 
Bbdd a up_conceptos_fundamentales
Bbdd a up_conceptos_fundamentalesBbdd a up_conceptos_fundamentales
Bbdd a up_conceptos_fundamentales
 
DISEÑO DE BASE DE DATOS
DISEÑO DE BASE DE DATOSDISEÑO DE BASE DE DATOS
DISEÑO DE BASE DE DATOS
 
Base de datos
Base de datosBase de datos
Base de datos
 

En vedette

Módulo 2 a empreendedorismo
Módulo 2 a   empreendedorismoMódulo 2 a   empreendedorismo
Módulo 2 a empreendedorismo
Angelo Peres
 
Palestra IEL-CE Eduardo Grizendi Abrl_2011
Palestra IEL-CE Eduardo Grizendi Abrl_2011Palestra IEL-CE Eduardo Grizendi Abrl_2011
Palestra IEL-CE Eduardo Grizendi Abrl_2011
Eduardo Grizendi
 
Aula 3 2014.1 ucam - planejamento de carreira - licoes para a carreira
Aula 3   2014.1 ucam - planejamento de carreira - licoes para a carreiraAula 3   2014.1 ucam - planejamento de carreira - licoes para a carreira
Aula 3 2014.1 ucam - planejamento de carreira - licoes para a carreira
Angelo Peres
 
Drug court effectiveness and policy
Drug court effectiveness and policyDrug court effectiveness and policy
Drug court effectiveness and policy
sevans-idaho
 
PSYC 1113 Chapter 14
PSYC 1113 Chapter 14PSYC 1113 Chapter 14
PSYC 1113 Chapter 14
jarana00
 

En vedette (20)

Acta pleno 120330
Acta pleno 120330Acta pleno 120330
Acta pleno 120330
 
Módulo 2 a empreendedorismo
Módulo 2 a   empreendedorismoMódulo 2 a   empreendedorismo
Módulo 2 a empreendedorismo
 
Palestra IEL-CE Eduardo Grizendi Abrl_2011
Palestra IEL-CE Eduardo Grizendi Abrl_2011Palestra IEL-CE Eduardo Grizendi Abrl_2011
Palestra IEL-CE Eduardo Grizendi Abrl_2011
 
Presentación1
Presentación1Presentación1
Presentación1
 
Viagem
ViagemViagem
Viagem
 
Crises
CrisesCrises
Crises
 
Aos Homens Maduros
Aos Homens MadurosAos Homens Maduros
Aos Homens Maduros
 
Aula 3 2014.1 ucam - planejamento de carreira - licoes para a carreira
Aula 3   2014.1 ucam - planejamento de carreira - licoes para a carreiraAula 3   2014.1 ucam - planejamento de carreira - licoes para a carreira
Aula 3 2014.1 ucam - planejamento de carreira - licoes para a carreira
 
Fluzz | Versão Preliminar Integral
Fluzz | Versão Preliminar IntegralFluzz | Versão Preliminar Integral
Fluzz | Versão Preliminar Integral
 
Test ppt show ch 14 103
Test ppt show ch 14 103Test ppt show ch 14 103
Test ppt show ch 14 103
 
Los Sacrificios: ¿Un Acto Satánico?
Los Sacrificios: ¿Un Acto Satánico?Los Sacrificios: ¿Un Acto Satánico?
Los Sacrificios: ¿Un Acto Satánico?
 
Diy user engagement, white paper
Diy user engagement, white paperDiy user engagement, white paper
Diy user engagement, white paper
 
Documentos tecnicos y cientificos
Documentos tecnicos y cientificosDocumentos tecnicos y cientificos
Documentos tecnicos y cientificos
 
Curso Autoevaluación Institucional
Curso Autoevaluación InstitucionalCurso Autoevaluación Institucional
Curso Autoevaluación Institucional
 
11.01. modulo 1-1
11.01. modulo 1-111.01. modulo 1-1
11.01. modulo 1-1
 
Drug court effectiveness and policy
Drug court effectiveness and policyDrug court effectiveness and policy
Drug court effectiveness and policy
 
PSYC 1113 Chapter 14
PSYC 1113 Chapter 14PSYC 1113 Chapter 14
PSYC 1113 Chapter 14
 
Mental Health
Mental HealthMental Health
Mental Health
 
Nti may 2013
Nti may 2013Nti may 2013
Nti may 2013
 
Presentación PFI Rodrigo Saa
Presentación PFI Rodrigo SaaPresentación PFI Rodrigo Saa
Presentación PFI Rodrigo Saa
 

Similaire à Administración de base de datos

Ventajas de bdd expo
Ventajas de bdd expoVentajas de bdd expo
Ventajas de bdd expo
gerardd98
 
Sistema de base de datos
Sistema de base de datosSistema de base de datos
Sistema de base de datos
Manuel Vaca
 
Doris aguagallo bdii_tarea1 (2)
Doris  aguagallo bdii_tarea1 (2)Doris  aguagallo bdii_tarea1 (2)
Doris aguagallo bdii_tarea1 (2)
Doris Aguagallo
 
Laura Garcia y Camila Hernandez
Laura Garcia y Camila HernandezLaura Garcia y Camila Hernandez
Laura Garcia y Camila Hernandez
AREQUIPE!
 
Base de Datos
Base de DatosBase de Datos
Base de Datos
Kathev
 
tarea base de datos
tarea base de datostarea base de datos
tarea base de datos
AREQUIPE!
 
Cirber consulta. sulbey niño y fernanda villada
Cirber consulta. sulbey niño y fernanda villadaCirber consulta. sulbey niño y fernanda villada
Cirber consulta. sulbey niño y fernanda villada
AREQUIPE!
 

Similaire à Administración de base de datos (20)

Contenido UNIDAD I. ARCHIVOS CONVENCIONALES Y BASES DE DATOS
Contenido UNIDAD I.  ARCHIVOS CONVENCIONALES Y BASES DE DATOSContenido UNIDAD I.  ARCHIVOS CONVENCIONALES Y BASES DE DATOS
Contenido UNIDAD I. ARCHIVOS CONVENCIONALES Y BASES DE DATOS
 
Ventajas de bdd expo
Ventajas de bdd expoVentajas de bdd expo
Ventajas de bdd expo
 
Astriddd
AstridddAstriddd
Astriddd
 
Taller n°1
Taller n°1Taller n°1
Taller n°1
 
Presentacion bases de datos
Presentacion bases de datosPresentacion bases de datos
Presentacion bases de datos
 
Presentacion bases de datos
Presentacion bases de datosPresentacion bases de datos
Presentacion bases de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos presentacion
Base de datos presentacionBase de datos presentacion
Base de datos presentacion
 
Sistema de base de datos
Sistema de base de datosSistema de base de datos
Sistema de base de datos
 
Introducción a las base de datos
Introducción a las base de datosIntroducción a las base de datos
Introducción a las base de datos
 
Base de datos_jehisglay_oliveros
Base de datos_jehisglay_oliverosBase de datos_jehisglay_oliveros
Base de datos_jehisglay_oliveros
 
Doris aguagallo bdii_tarea1 (2)
Doris  aguagallo bdii_tarea1 (2)Doris  aguagallo bdii_tarea1 (2)
Doris aguagallo bdii_tarea1 (2)
 
Frt
FrtFrt
Frt
 
Base de datos (conceptos básicos )
Base de datos (conceptos básicos )Base de datos (conceptos básicos )
Base de datos (conceptos básicos )
 
Laura Garcia y Camila Hernandez
Laura Garcia y Camila HernandezLaura Garcia y Camila Hernandez
Laura Garcia y Camila Hernandez
 
Base de Datos
Base de DatosBase de Datos
Base de Datos
 
Trabajo de base de datos
Trabajo de base de datosTrabajo de base de datos
Trabajo de base de datos
 
tarea base de datos
tarea base de datostarea base de datos
tarea base de datos
 
Base de datos
Base de datos Base de datos
Base de datos
 
Cirber consulta. sulbey niño y fernanda villada
Cirber consulta. sulbey niño y fernanda villadaCirber consulta. sulbey niño y fernanda villada
Cirber consulta. sulbey niño y fernanda villada
 

Administración de base de datos

  • 1. Uso de Excel y Access para el desarrollo de aplicaciones administrativas empresariales Administración de Base de Datos Contenido Conceptos básicos y su aplicación El propósito de una base de datos Ventajas al utilizar una base de datos Definición de base de datos Modelo Entidad- Relación Diagramas Entidad Relación (DER) Entidades, Atributos Descripción de relaciones Tipos de relaciones Modelo de datos Lenguaje de definición de datos Lenguaje de manipulación de datos Modelo relacional Relación matemática / Tabla relaciona Qué es una llave Qué es un esquema de base de datos relacional Reglas de integridad estructurales
  • 2. Llave foránea Diseño de un sistema que utiliza base de datos Conceptos básicos y su aplicación El área de bases de datos ha sido un área muy importante dentro de la Ciencia de la Computación y más recientemente como parte esencial de las Tecnologías de Información. Al decir que el mundo vive en la era de la información, lo primero que se viene a la mente es el lugar donde se almacenan los datos requeridos para producir información, las Bases de Datos. El propósito de una Base de Datos es: … ayudar a la gente y a las organizaciones a llevar un registro de las cosas, de aquellos objetos acerca de los cuales les interesa guardar datos. Estos datos son los que permitirán generar información de esas cosas u objetos. Para comprender por que es importante este almacenamiento de datos, se puede primero analizar que problemas se presenta cuando se
  • 3. utilizan solo datos sin la estructura que ofrece una Base de Datos:  Al tener sistemas aislados, con diferentes medios en los cuales se almacena información, un mismo dato puede estar almacenado en diferentes lugares  Al estar el mismo dato almacenado en diferentes lugares, puede tener diferentes valores en esos diferentes lugares, lo que puede provocar inconsistencias, si no se logra tener esas copias con la información consistente  La privacidad de datos se ve afectada, debido a que los departamentos necesitan compartir datos, pero no todos los que custodian, solo los que consideran pueden compartir, creando problemas al no contar con todo lo que necesitan, aunque la empresa pueda tenerlos disponibles.  En contraste, las bases de datos almacenan los datos en tablas simples, donde cada una de ellas está definida para apoyar un tema o área especifica. Esto permite mantener una definición sencilla, y un uso sencillo de la tabla, en consecuencia. Las tablas poseen una estructura que permite relacionarlas fácilmente entre si, a través del uso de llaves, o campos comunes, que permiten una navegación sencilla y natural a
  • 4. través de ellas, siempre y cuando su diseño sea el correcto. En la siguiente figura se muestra lo que es una arquitectura de base de datos, donde se observa que los datos son independientes de los programas que los utilizan, lo que ofrece beneficios al eliminar los problemas de redundancia. Las ventajas de utilizar una Base de Datos, a través del software de administración, se puede entender claramente en los siguientes casos: 1. Una base de datos permite almacenar grandes volúmenes de datos, con un mínimo de datos duplicados. Esto permite tener un acceso rápido y eficiente a los mismos, cuando se requiere obtener información a partir de ellos. Al estar almacenados en un lugar común, es factible aplicar reglas de integridad, que permite validad sus consistencia. 2. La información almacenada en una base de Datos se integra eficientemente, y no posee limitaciones impuestas por la organización de la empresa. Esta integración permite que los datos seas usados eficientemente, y con un mínimo de problemas de integridad, por diferentes usuarios y departamentos en toda la organización. Esto le ofrece como beneficio a un administrador tener acceso a datos a los cuales antes no tenía acceso, por estar almacenados en diferentes medios y sistemas.
  • 5. 3. Un beneficio muy importante se asocia a la calidad en los servicios de datos. La base de datos permite tener una durabilidad y permanencia de los datos que no es cuestionable. Otro aspecto relacionado a esta ventaja es que las transacciones que se ejecutan directamente sobre la base de datos quedan registradas permanentemente, lo que permite su acceso posterior, para cualquier consulta, o para la protección ante cualquier falla del sistema. 4. En teoría, una base de datos dura indefinidamente, hasta que se decide guardarla en un ambiente fuera del uso directo de un sistema, o se decide borrarla definitivamente. 5. La durabilidad de una base de datos permite la recuperación de los datos a un estado estable, antes de ocurrir la falla. Esto da la seguridad necesaria para ofrecer datos confiables a cualquier sistema de misión crítica de una empresa, como sería el sistema en línea de ventas, o en general, cualquier sistema en línea, tal como los que forman un negocio basado en Internet. 6. Un Sistema de Administración de Bases de Datos permite compartir los datos de una Base de Datos sencilla y eficientemente, a una comunidad de usuarios diferentes. Las vistas son el medio que el software de administración de base de datos ofrece para que un grupo de usuarios tenga acceso solo a la porción de la base de datos a la cual ellos tienen derecho de acceso. De la misma forma, para un equipo de desarrollo de una aplicación, una vista le permite el acceso a solo los datos que tienen derecho, de acuerdo a los requerimientos que el sistema bajo desarrollo debe resolver. 7. El acceso concurrente a los datos es otra de las ventajas. Este acceso permite que diferentes usuarios, a través de sus aplicaciones, accedan a los datos, mezclando sus operaciones, con la
  • 6. seguridad que las mismas serán ejecutadas de tal forma que no se afecten negativamente entre si. Esta es una condición indispensable para el uso de una base de datos desde Internet. 8. Finalmente, la seguridad. Este es un componente crítico en cualquier base de datos que puede ser accesada por Internet. Las técnicas de seguridad y métodos de acceso que una base de datos ofrece hoy soy de tal forma seguros que el uso es de tal forma natural para todos los que acceden directamente a la misma. Se previene el acceso no autorizado a la base de datos, los mensaje se encriptan de tal forma que es casi imposible decodificarlos. Con esto se ofrece un ambiente seguro, que permite trabajar de manera confiable con la base de datos. Definición de Base de Datos La Tecnología de Bases de datos es hoy un elemento común en la mayoría de todas las aplicaciones de computadoras o tecnología de Información., sin importar el tipo de aplicación, o el giro de la compañía., sea un sistema financiero en un banco, o un sistema de punto de venta en un supermercado, o un sistema de control de producción en una empresa manufacturera. En todos los casos elementos comunes de Tecnología de Información son tanto las Bases de Datos como los Sistemas de Administración de Bases de Datos requeridos La gente interactúa normalmente con Bases de Datos, y sus tecnologías asociadas. Para dejar en claro estos términos y tecnologías, se definen a continuación, para aclarar los temas principales que se cubren en este curso. Los términos a definir y que se usarán con esta definición en el resto de curso son: Datos. Antes de definir que es una Base de Datos es primordial entender que es un dato. Los datos son hechos, que sirven para describir a objetos, gente, o eventos. Son la materia prima utilizada para producir información.
  • 7. Base de Datos. Para hablar de una definición de base de datos se debe primero entender algunos requerimientos que deben ser resueltos: La necesidad de compartir datos, entre diferentes usuarios, y que los datos presenten una relación entre ellos, y que estén diseñados para cumplir las necesidades de información de la empresa, y de sus diferentes partes que la forman Una definición de los datos integrada, que ofrezca una definición de los mismos, para poder tener la independencia requerida entre los datos de la empresa, y los programas de aplicación que los van a utilizar Se requiere de un modelo que represente los datos de la empresa, compuesta comúnmente por entidades, atributos, y relaciones Esto permite tener la primera definición de una base de datos: Es una colección integrada, de datos relacionados. Dicho de otra forma: colección auto descrita de registros relacionados o tablas. Algunos de sus componentes son: – Datos del usuario – La Metadata, o datos acerca de la estructura de la base de datos misma – Indices y estructuras de datos relacionadas – Procedimientos almacenados (Stored procedures), o programas o módulos almacenados dentro de la base de datos, y que sirven para su manipulación – Triggers, o procedimientos que se ejecutan cuando ocurre un evento o actividad particular sobre la base de datos
  • 8. – Metadata de aplicaciones, o datos que permiten describir las aplicaciones que se ejecutan sobre la base de datos Dos características son esenciales en la definición de una Base de Datos:  Datos relacionados. – Esta característica implica el que los datos representan hechos, relacionados lógicamente, acerca de aspectos del mundo real que son de interés para el área que apoya una aplicación. Por ejemplo, los datos que se necesitan en una Base de Datos orientada al área de administración de una empresa, en la cual se manejan datos de: clientes, pedidos que los clientes realizan, los artículos que los pedidos incluyen, el surtido de los pedidos, la facturación a los clientes de sus pedidos entregados, los pagos que los clientes realizan sobre sus facturas, etc. Lo mismo se puede hacer para describir los datos que se manejan en el área de manufactura de una empresa.  Datos integrados. – Esta característica implica que los datos para múltiples aplicaciones se almacenan juntos, y pueden ser manipulados de igual forma por dichas aplicaciones. Al estar almacenados juntos, los datos puedes compartirse, permitiendo que múltiples aplicaciones las utilicen, sin hablar de fronteras, que establecen normalmente barreras artificiales para este uso compartido. Un buen ejemplo es la información que se genera cuando un área de la empresa registra la información de una orden interna para compra de un producto. Esta información es compartida y utilizada por el área interna de compras, que genera una orden de compra al proveedor, quien surte la orden que será recibida en el almacén, y cuya información comparte con contabilidad, que la requiere para sus registros. Las cuentas por pagar atienden las facturas de los proveedores, en base a la información de los pedidos
  • 9. entregados. Esto ejemplifica la necesidad y la facilidad para compartir estos datos. Ventaja del enfoque de uso de una base de datos Un beneficio muy importante asociado al uso de loas bases de datos es: El acceso controlado a los datos. Esto redunda en beneficios asociados por el uso de o Un sistema de seguridad, que permita el uso de la base de datos solo por el personal autorizado para el uso de la base de datos. o Un sistema de control de la integridad, que permita que los datos almacenados cumplan con las reglas de integridad definidas para los mismos, y que garanticen a su ves la integridad y consistencia de la base de datos o Un sistema de control de concurrencia., que permita la ejecución de transacciones concurrentes sobre la base de datos, sin perder la integridad de los datos almacenados.
  • 10. o Un sistema de recuperación, que permita que la base de datos sea restablecida a un estado correcto o válido de la base de datos, justo antes de que una falla interrumpiera su uso por parte de los programas de aplicación o Un mecanismo de vistas, que permita a los usuarios solo acceder a los datos que ellos necesitan usar. De la discusión de los conceptos de bases de datos se desprende la importancia de hablar de un Sistemas de Administración Bases de Datos, por lo que se incluye este concepto, para su discusión a la luz del concepto de bases de datos. Este concepto será posteriormente presentado.
  • 11. Modelo Entidad – Relación Para la creación de una base de datos es necesario contar primero con el modelo de datos que permita crearla. El modelo de datos, como abstracción de la realidad, es la herramienta utilizada para la representación de las entidades y los atributos que las describen, asi como las relaciones entre ellas. Este modelo sirve como base para poder crear una base de datos. El enfoque de modelación mas usado es el modelo Entidad-Relación. El modelo entidad-relación (E-R) se basa en percibir y modelar el mundo real en base a elementos básicos de construcción: entidades y relaciones entre ellas, así como atributos que permiten describir a ambos elementos. De todo lo anterior se deduce que el punto clave en la construcción de la base de datos será el modelo de datos. Con la modelación de los datos requeridos por una base de datos se logra: 1. Formalización: definir formalmente las estructuras permitidas y las restricciones a fin de representar los datos que requiere una aplicación, y la base de datos requerida 2. Diseño: el modelo resultante es la materia prima esencial para el diseño de la base de datos. El modelo de Entidad Relación, fue propuesto por Peter Chen, en 1976. Usado como el modelo sobre el cual se define el modelo de datos requerido por una aplicación. Crea un modelo de datos en términos de: entidades, sus atributos y asociaciones entre las ocurrencias de sus entidades, llamadas relaciones (Relationships). Se proponen 3 clases de objetos:
  • 12. • Entidades • Atributos • Relaciones Entidades: • Objetos principales acerca de los cuales se almacena información. • Cosas de importancia o interés para un área de negocios o para un sistema que requiere del almacenamiento de datos. • Ejemplos: Cliente, Producto, Inventario, Proveedor, Factura Las entidades se clasifican en Fuertes y Débiles • Entidad Fuerte: Posee un identificador que determina de manera única a las ocurrencias de la entidad. Tiene existencia propia, que no depende de la existencia de otras entidades. Se representa: • Entidad Débil: Deriva su existencia de los atributos que son identificadores de una o más entidades padres.Su existencia está limitada o determinada por la existencia de las entidades padres. Se representa:
  • 13. Atributos: Describen a las entidades. Representan características o cualidades de una entidad. Ejemplos: nombre de una persona, nombre de ciudad, número de empleado, fecha de contratación, monto a pagar . Los atributos se representan de la siguiente forma: Identificador: identifican de manera única a cada ocurrencia de la entidad. Descriptor: Describen una característica o cualidad de la entidad Representación de las relaciones: • Permiten representar diferentes tipos de asociaciones entre las entidades. • Tienen ‘semántica’, es decir, describen información acerca de la forma en que se asocian las entidades. • Se representan así: (existen múltiples formas de representarlas) Diagramas de Entidad relación (DER)
  • 14. Propósito: • Mostrar las Entidades y cómo éstas se relacionan. • El DER se concentra sólo en las entidades de datos Ejemplo de construcción de un Diagrama de Entidad Relación Pregunta inicial:¿Cuáles son las entidades de interés acerca de las cuales se desea almacenar datos ? • Para un negocio comercial podrían ser:CLIENTES, PRODUCTOS, INVENTARIO, PROVEEDORES, FACTURAS, ORDENES DE COMPRA. Construcción: • Dibujar un bloque para cada entidad identificada. • Nombres de las entidades: se recomienda que sean en singular Ejemplo: CLIENTE en lugar de CLIENTES. • Siguiente pregunta: ¿ Cuál relación existe entre cada par de entidades ? Ejemplos: Un CLIENTE se puede asociar con muchas FACTURAS, y cada FACTURA puede ser sólo asociada a un CLIENTE. Tomando PRODUCTO y FACTURA: Un PRODUCTO puede asociarse con muchas FACTURAS, y una FACTURA puede ser asociada a muchos PRODUCTOs. Tomando PRODUCTO e INVENTARIO: Un PRODUCTO puede asociarse con una ocurrencia de INVENTARIO, y una ocurrencia de INVENTARIO puede ser asociada a un solo PRODUCTO. Representación:
  • 15. Entidades en un solo diagrama : ¿Qué pasa con respecto al nombre de las relaciones? Concepto importante acerca del análisis ER: una relación muchos-a- muchos puede ser dividida en 2 relaciones uno-a-muchos, identificando la "entidad intersección". Por ejemplo: La relación muchos-a-muchos entre PRODUCTO y FACTURAs Puede ser vista como dos relaciones 1 a muchos: Se añade una entidad "intersección" entre las dos originales:
  • 16. Pregunta: ¿ Qué permite asociar a un PRODUCTO con muchas FACTURAS, o a una FACTURA con muchos PRODUCTOs ? Una respuesta: ARTICULO-VENDIDO, o DETALLE-FACTURA Para la relación muchos-a-muchos entre PRODUCTOs y PROVEEDOREs: Otra entidad: "ENVIO-PRODUCTO" , cualquier proveedor puede surtir cualquier producto Para cada relación uno-a-uno: Se pregunta si las dos entidades son realmente entidades separadas, o pueden ser combinadas. Ejemplo: Entre PRODUCTO e INVENTARIO no existe una razón importante para mantener una entidad separada describiendo el inventario. Diagrama de Entidad relación, resuelto:
  • 17. EJERCICIO: ¿ Es una FACTURA una entidad, o es una relación entre un CLIENTE y un PRODUCTO ? Es posible encontrar argumentos para apoyar a ambos puntos de vista. Condición clave para la diferenciación: Si se puede definir un atributo identificador, es una entidad Si no se le puede encontrar un atributo identificador y asocia otras entidades, es una relación Al analizar cada par de entidades, se pregunta por sus relaciones. Si existen, deben ser clasificadas de acuerdo a los siguientes tipos de relaciones: " Cada División es administrada por uno, y solo un Gerente" " Cada Gerente administra una, y solo una División"
  • 18. "Cada Cliente puede tener una o más facturas con la empresa" "Cada factura se asigna a un solo cliente" " Cada proveedor suministra uno o más productos" " Cada producto es suministrado por uno o más proveedores" EJERCICIO: ¿ Es una FACTURA una entidad, o es una relación entre un CLIENTE y un PRODUCTO ? Es posible encontrar argumentos para apoyar a ambos puntos de vista. Condición clave para la diferenciación: Si se puede definir un atributo identificador, es una entidad Si no se le puede encontrar un atributo identificador y asocia otras entidades, es una relación Descripción de Relaciones Al analizar cada par de entidades, se pregunta por sus relaciones. Si existen, deben ser clasificadas de acuerdo a los siguientes tipos de relaciones:
  • 19. " Cada División es administrada por uno, y solo un Gerente" " Cada Gerente administra una, y solo una División" "Cada Cliente puede tener una o más facturas con la empresa" "Cada factura se asigna a un solo cliente" " Cada proveedor suministra uno o más productos" " Cada producto es suministrado por uno o más proveedores" Relación obligatoria: Una entidad puede estar relacionada en todas sus ocurrencias. Ejemplo: DEPARTAMENTO y EMPLEADO un DEPARTAMENTO debe estar asociado a uno o varios empleados que trabajan en él. Un EMPLEADO debe estar asociado a uno y solo un DEPARTAMENTO
  • 20. Es incorrecto tener ocurrencias de una entidad sin ocurrencias de la otra. Representación: obligatoria Tipos de relaciones Relación opcional: Dos entidades pueden estar relacionadas, pero no en todas sus ocurrencias. • Ejemplo: EMPLEADO y PROYECTO. o Un empleado puede estar asignado a un proyecto, a algunos proyectos o a ninguno. o Un proyecto puede estar autorizado, y no tener empleados asignados. Representación: opcional Relación Unitaria Una entidad puede estar relacionada consigo misma. Ejemplo: Es jefe de Le reporta a aaaaaaa "Un empleado puede ser jefe de cero o más empleados" o "Un empleado siempre reporta a otro empleado"
  • 21. Sistema de Administración de Base de Datos. Un Sistema de Administración de Base de Datos, o DBMS, (por sus siglas en inglés, Database Management System) es de manera sencilla, software para la creación y administración de bases de datos, y sus sistemas asociados, en una computadora.  Las funciones principales de un DBMS son: – La creación de bases de datos, sus tablas componentes, y las estructuras de apoyo asociadas – Permitir la lectura y escritura de los datos almacenados en una base de datos – Permitir el mantenimiento a las estructuras de una base de datos – Forzar el cumplimiento de las reglas de integridad definidas para una base de datos – Mantener el control de concurrencia a los datos, cuando se presenta la ejecución concurrente de transacciones a la base de datos – Ofrecer los mecanismos de seguridad para el acceso a las bases de datos definidas y mantenidas en el DBMS – Ofrecer las facilidades de respaldo y recuperación de las bases de datos, necesarias para garantizar la seguridad e integridad de las bases de datos manejdas por el DBMS  Ejemplos de DBMSs comerciales: Oracle, DB2, Microsoft Access, SQL Server Que es una Base de Datos Relacional Un sistema de Administración de Bases de Datos permite que los datos permanezcan independientes de los programas de aplicación que los manipula. Esta es una característica muy importante, por todos los beneficios que le ofrece a quien desarrolla programas para accesarlos. Esta característica recibe diferentes nombres, tales como independencia de datos, o independencia lógica. Esta independencia se logra a través de un proceso de abstracción de datos, que
  • 22. permite definir a los mismos de manera abstracta, independiente de la tecnología en la cual la base de datos llegara a implantarse. Para lograr lo anterior, un concepto fundamental de la abstracción de datos en bases de datos es el concepto de un modelo de datos, el cual permite definir los requerimientos de datos de un área de la empresa, mucho antes de pensar en como representarlos en tecnología. El modelo de datos entonces define a los datos de tal forma que se organizan para ser manipulados en la base de datos. Este módulo permite introducir el concepto de Bases de Datos Relacionales, y la forma en la cual los datos se pueden definir para ser representados en base a relaciones matemáticas, o relaciones, esencia del modelo relacional. La forma natural de representar una relación es en base a una tabla, o representación tabular de las relaciones. El modelo relacional es el modelo de datos que soporta a la mayoría de los productos de bases de datos en el mercado actual. Es un modelo formal, basada en las matemáticas, en su concepto de relación matemática y en la teoría de conjuntos. El contenido de este módulo y el siguiente presentan los conceptos y términos que se presentan a continuación: Relaciones matemáticas o tablas relacionales Llaves, primaria, alterna, foránea Diseño de bases de datos relacionales Normalización Que es un Modelo de Datos Un concepto muy importante y fundamental para hablar de abstracción de datos en el área de bases de datos es el modelo de datos. Un modelo de datos
  • 23. permite representar los requerimientos de datos de un área bajo análisis en una forma organizada, para facilitar su representación en un producto de bases de datos, y posteriormente su manipulación. Un modelo de datos se forma de: Elementos de modelación, que permiten definir la estructura de los datos, tales como tipos de datos, dominios, y reglas de integridad. (DDL) Operaciones para poder actualizar y consultar la base de datos. (DML) Que es un Lenguaje de Definición de Datos (DDL). Son los elementos de modelación que permiten definir el metadata de la base de datos, es decir, los datos acerca de los datos, que se almacenan en el DBMS, en el catálogo del sistema. Que es un Lenguaje de Manipulación de Datos (DML). Son las operaciones que permiten el acceso a la base de datos para actualización y consulta a los datos de la base de datos, y poder resolver cualquier consulta que los usuarios requieran de la misma. El uso de un modelo de datos en la creación de una Base de Datos Para la creación de una base de datos es necesario contar primero con el modelo de datos que permita crearla. (Modelo de Entidad – Relación)
  • 24. Que es el modelo relacional El modelo relacional fue propuesto por E.W. Codd en 1970. Es actualmente el modelo que soporta a la gran mayoría de los sistemas de bases de datos de la actualidad. El modelo provee características únicas de modelación, que permiten crear modelos de datos relacionales, con relativa facilidad. El modelo Relacional ofrece las siguientes ventajas: Los datos se representan en relaciones, cuya manera natural de representación es en forma de tabla bidimensional. Esta representación es muy simple de entender y visualizar, además de que es conocida y utilizada en muchas formas de trabajo de la vida diaria, tanto en la escuela como en el trabajo. Un ejemplo de una tabla relacional se presenta a continuación: Alu Fecha mno Matrí Nom Apelli Ciuda Est de Carrera cula bre do d ado Nacimi ento Ing. En 4517 Monte 21/01/ José Pérez NL Electró 5 rrey 1980 nica Ing. En 4655 Martí Hermo SO 12/06/ Luis Comput 0 nez sillo N 1981 ación Lic. En 4712 Ren Gonz ME 13/09/ Toluca Econom 3 é ález X 1992 ía
  • 25. Es un modelo formal de datos, característica que lo diferencia de los otros modelos. Es un modelo basado en las matemáticas, en el concepto de relación matemática y en teoría de conjuntos. La manera natural de representar una relación es en forma de tabla, que permite una conceptualización y explicación sencilla de este concepto. Además, por ser un concepto matemático, las tablas que forman una base de datos relacional son manipuladas con muchas ventajas por operadores matemáticos muy sencillos y poderosos, el álgebra y el cálculo relacional. A partir de estos operadores es muy sencillo resolver cualquier consulta que un usuario requiera. Estos lenguajes, conjuntos de operadores, están presentes en el SQL, lenguaje estándar para la manipulación de Bases de Datos relacionales comerciales. La teoría que soporta a las bases de datos relacionales es muy formal, matemática. Por esta razón, es importante conocerla para tener un entendimiento que permita obtener el máximo aprovechamiento de ésta. Los conceptos que se presentan en este apartado deben permitir que se aproveche al máximo la tecnología, por lo que su entendimiento es indispensable. Se presentan esos conceptos a continuación. Que es una Relación Matemática/Tabla relacional Un elemento fundamental en el modelo relacional es el concepto de relación matemática, o tabla relacional.
  • 26. Una relación o tabla relacional, en su forma más simple, es un conjunto de renglones (también conocidos como tuplas, registros, ocurrencias, o instancias). De una manera mas formal, es el conjunto de tuplas, o renglones, formados por un conjunto de valores tomados a partir de “n” diferentes dominios. Se puede expresar de la siguiente manera: Relación R: Dado un conjunto de “n” dominios, D1 a Dn, una relación R se define como el conjunto de tuplas ordenadas, denotadas como <d1, d2, …, dn> donde cada tupla es formada tomando un valor de cada uno de los dominios Se denota asi: R = {<d11, d21, …, dn1>1, <d12, d22, …, dn2>2, …, <d1m, d2m, …., dnm>m } Por ejemplo, en la tabla relacional ALUMNO, cada renglón corresponde a los datos de un alumno en particular. La tabla o relación contiene entonces los renglones que representan los datos de los alumnos en una escuela. Cada uno de los datos almacenados en un renglón representa el valor de un atributo, para cada atributo que forma una tabla relacional. En la tabla de alumno, los atributos que describen a la tabla o relación son: Matrícula, Nombre, Apellido, Ciudad, Carrera y Fecha de Nacimiento. Finalmente, cada columna de la tabla relacional, cada atributo, contiene los valores del atributo para cada uno de los renglones u ocurrencias de la tabla. Los valores que un atributo puede tomar se conocen como el dominio del atributo, y es muy importante su definición, ya que permite cuidar las reglas de los valores válidos en un atributo.
  • 27. Cada tabla debe tener entonces la siguiente definición: Nombre de la tabla Nombre para cada columna o atributo que forma la tabla El dominio sobre el cual está definido cada uno de los atributos que forman la tabla. Características de una tabla relacional Una tabla relacional es una tabla bidimensional que posee la siguientes características: Los renglones poseen datos acerca de una entidad, entendiendo como entidad a algo acerca de lo cual se desea almacenar datos. Las columnas contienen datos acerca de los atributos de la entidad. Cada posición en la tabla almacena un valore simple, atómico, de un atributo Todos los valores almacenados en una columna son del mismo tipo, es decir, están definidos sobre el mismo dominio Cada columna o atributo debe poseer un nombre único El orden de las columnas no es relevante El orden de los renglones no es relevante No pueden existir dos renglones idénticos en la tabla Se utiliza el nombre de tabla relacional, en lugar de relación, para evitar confundir con el nombre que se le da a una relación en el sentido natural del Español, es decir, la asociación entre elementos, aunque es importante aclarar que no todas las tablas son relaciones Los siguientes términos se utilizan de manera equivalente, para referirse a términos comunes en el área de Bases de Datos: Tabla/renglón/columna
  • 28. = archivo/registro/campo = relación/tupla/atributo El grado de una relación es el número de columnas o atributos de la misma y no puede ser cero, una tabla no puede existir sin columnas. La cardinalidad de una tabla es el número de renglones o tuplas en la tabla. Que es una Llave Una llave está formada por uno o más atributos que permiten identificar de forma única a cada tupla o renglón en una tabla relacional. Una llave compuesta es una llave que está formada por dos o más atributos. Además:  Una tabla relacional puede tener solo una llave primaria, pero pueden tener llaves adicionales, que son llamadas llaves candidatas o alternas  Una llave primaria se usa para – Establecer relaciones entre diferentes tablas – Permiten organizar la forma en que las tablas se almacenan – Son usadas para generar índices, mecanismos usados para el acceso eficiente a los datos Llave primaria En tablas en las cuales existe más de una llave, se selecciona a una de ellas, como la llave con la cual se realizan búsquedas o con la cual se establecen relaciones entre las tablas. Este es el caso de la llave primaria. Las llaves restantes son llamadas llaves alternas o secundarias. La selección de la llave primaria se considera normalmente sobre la base de ser la llave más pequeña, aunque no es una condición absoluta. El caso de una llave compuesta, que consiste de varios atributos, es mucho más compleja de manejar como llave primaria, por ejemplo.
  • 29. Que es un Esquema de Base de Datos Relacional Un esquema de base de datos relacional es un conjunto de definiciones de tablas relacionales, y un conjunto de reglas o restricciones de integridad. La definición de tablas relacionales procede de definir los requerimientos de un área de aplicación. Las reglas de integridad definen todas aquellas condiciones, o restricciones, que los datos deben cumplir, para mantener la integridad de los datos, y su valor. Las reglas de integridad se agrupan en: Estructurales, que son específicas al modelo de datos relacional. Semánticas, que son específicas a la aplicación, impuestas por las reglas de negocio que la aplicación misma pide cumplir. Un ejemplo puede ser las condiciones que una empresa puede requerir para la contratación de un empleado, y que el sistema debe cumplir, lo que impone reglas que los datos de la base de datos debe cumplir. Las reglas de integridad en una base de datos permiten que la información almancenada en la misma posea la consistencia e integridad requerida por sus usuarios. Estas reglas provienen de la definición misma del modelo relacional, pero están dirigidas a que su cumplimiento garantice que los datos sean correctos, o consistentes. Por su importancia es indispensable que se conozca sobre las mismas, que se definan en la creación de la base de datos, y que el acceso a la base de datos cumpla con ellas. A continuación se presentan las bases del manejo de reglas de integridad, para que se busque su cumplimiento. Reglas de Integridad Estructurales del Modelo Relacional: 1. Regla de Integridad de Dominio. Hace referencia a que los valores de los datos deben ser atómicos. El
  • 30. dominio de cada atributo debe estar compuesto de valores atómicos, por lo tanto no puede ser un valor compuesto de otros valores más simples, como un arreglo, o un registro de valores. Si se requiere almacenar una dirección por ejemplo, será necesario separar en diferentes atributos, como Calle, número, colonia, ciudad. 2. Regla de Integridad de Llave. Establece que la llave de una entidad debe ser única. Regla de Integridad de entidad: Establece que no se permite un valor nulo, como parte de una llave primaria. El valor nulo es permitido para todos los dominios, y se utiliza para cuando el valor del atributo no está definido, o no aplica, y el dominio definido para el atributo lo permite. Por ejemplo, el dominio de NumeroDeEmpleadoDelJefe en la tabla de Empleados, cuando se trabaja en el registro del director de la empresa., y el valor de este número no aplica para el director. Se almacena entonces un NULO. 3. Regla De Integridad referencial: Las referencia de una tabla a otra tabla debe ser con valores de llaves consistentes. Que significa la regla de Integridad referencial La regla de integridad referencial sirve para forzar que las relaciones entre tablas, que se establecen mediante llaves, mantengan siempre datos consistentes entre las mismas. Las relaciones entre las tablas se establecen entre renglones de una tabla con renglones en la segunda tabla. Estas relaciones se establecen mediante las llaves, donde la llave primaria de una tabla se replica
  • 31. en otra tabla, para establecer la relación. La replica de la llave primaria en otra tabla, recibe el nombre de llave foránea (foreign key). Que es una llave foránea Una llave foránea (FK) es uno o mas atributos en una tabla, que son la llave primaria en otroa tabla, inclusive la misma. La llave foránea debe cumplir con: 1. Los atributos que forma la FK deben estar definidos en los mismos dominios que los atributos que forman la PK relacionada a la FK. La condición hace referencia a que los valores deben coincidir entre la FK y la PK, no sobre los nombres de los atributos, por lo cual los nombres en ambas llaves pueden ser diferentes. 2. El valor de la FK en un renglón de la tabla, debe coincidir con un valor de la PK en la otra tabla, o ser un valor NULO. Esto garantiza que la información es consistente entre las tablas que mantienen una relación entre ellas. Para mostrar estas relaciones en un diagrama, se dibuja una flecha que va de la FK a la PK, mostrando la relación entre ambas tablas. En el siguiente ejemplo se muestra la relación existente entre Ventas realizadas a los clientes, la llave foránea es ID Cliente en la tabla Ventas
  • 32. En general, las reglas de integridad referencial pueden ser definidas entre dos tablas, en cualquier dirección, e inclusive pueden ser definidas entre ocurrencias o renglones de la misma tabla. Ejemplo: ¿qué relaciones se pueden definir entre un departamento académico y los profesores que trabajan en él? Un departamento académico se asocia con los diferentes profesores que trabajan en él. Por otro lado un profesor es jefe o director de un departamento académico.
  • 33. Diseño de un Sistema que utiliza una Base de Datos El diseño de una base de datos relacional puede seguir diferentes caminos. La primera opción toma como base la observación del mundo real bajo estudio, generando un conjunto de tablas, que contengan los atributos y las restricciones de integridad sobre las mismas. Otra opción es dividir el diseño en dos fases: definir el modelo conceptual y su esquema, transformar el esquema conceptual en un esquema relacional mediante un conjunto de reglas de transformación Aunque la normalización es una base muy importante para el diseño de una base de datos, este diseño no puede limitarse a la aplicación exclusiva de la teoría de la normalización. El diseño de una base de datos, por otro lado, tiene múltiples puntos de vista, y formas de desarrollarse, de acuerdo a esos puntos de vista. Para este curso, la idea del diseño es que se convierta en un proceso práctico, que facilite el proceso de diseño. En base a esos puntos de vista, un proceso de diseño práctico, incluye las siguientes fases: Fase 0: Análisis de requerimientos. (No forma parte del proceso de diseño) Aunque esta fase realmente corresponde a la fase de análisis de un proyecto, se presenta con el fin de establecer que de esta fase se obtiene la materia prima para el diseño de la base de datos. De esta fase entonces se requiere obtener los requerimientos de datos que el sistema bajo análisis ha formalizado. El
  • 34. documento de análisis, en la parte de requerimientos de datos, es entonces la entrada al proceso de diseño. Fase 1: Diseño conceptual de la base de datos Esta fase puede ser considerada tanto parte de la fase de análisis de requerimientos, como parte de la fase de Diseño. Es decir, para algunos puede formar parte del análisis de requerimientos, donde el producto de esta fase es el modelo de datos construido en base a una herramienta específica. Para otros, esta actividad corresponde a la fase de diseño de software, específicamente, del diseño de la base de datos. Para este caso se considera parte del diseño de la base de datos. Esta fase corresponde a la definición del esquema conceptual, que es el esquema que define el modelo de datos a alto nivel, independiente de cualquier sistema de administración de bases de datos. Por ser un modelo abstracto, no puede utilizarse para definir la estructura de la base de datos. Fase 2: fase de diseño lógico (Transformación del modelo de datos o esquema conceptual, al SMBD a utilizar). En esta fase se transforma la salida del diseño conceptual, o esquema conceptual, al esquema de la base de datos en el modelo de datos del DBMS a utilizar Fase 3: Diseño de la base de datos física. Consiste en definir las estructuras de almacenamiento y de acceso para alcanzar una rendimiento óptimo de las aplicaciones que se ejecutarán sobre la base de datos. Se tienen diferentes criterios para la definición de la base de datos física: el tiempo de respuesta de ejecución de las aplicaciones y consultas a la base de datos, la utilización del espacio de almacenamiento
  • 35. disponible o el volumen de transacciones por minuto, que se ejecutan sobre la base de datos Estas fases son genéricas, por lo que deben revisarse para el caso particular de cada empresa.