Descarga - Victor Santiago Yunga Juela

Anuncio
2011
UNIVERSIDAD TÉCNICA DE MACHALA
UNIVERSIDAD TÉCNICA DE MACHALA
FACULTAD DE CIENCIAS EMPRESARIALES
ESCUELA DE CONTABILIDAD Y AUDITORÍA
CÁTEDRA:
Computación Aplicada II.
ALUMNO:
Víctor Santiago Yunga Juela.
PROFESOR:
Ing. Luis Lojan.
CURSO:
4° “C” Diurno.
MACHALA
-
EL ORO
-
ECUADOR
Víctor Santiago Yunga Juela.
2011
UNIVERSIDAD TÉCNICA DE MACHALA
BASE DE DATOS
Una base de datos es una colección de información organizada de forma que un programa
de ordenador pueda seleccionar rápidamente los fragmentos de datos que necesite. Una
base de datos es un sistema de archivos electrónico.
Las bases de datos tradicionales se organizan por campos, registros y archivos. Un campo
es una pieza única de información; un registro es un sistema completo de campos; y un
archivo es una colección de registros. Por ejemplo, una guía de teléfono es análoga a un
archivo. Contiene una lista de registros, cada uno de los cuales consiste en tres campos:
nombre, dirección, y número de teléfono. A veces se utiliza DB, de data base en inglés,
para referirse a las bases de datos.
Definición.
 Un conjunto de información almacenada en memoria auxiliar que permite
acceso directo y un conjunto de programas que manipulan esos datos.
 Base de Datos es un conjunto exhaustivo no redundante de datos
estructurados organizados independientemente de su utilización y su
implementación en máquina accesibles en tiempo real y compatibles con
usuarios concurrentes con necesidad de información diferente y no
predicable en tiempo.
Componentes principales
 Datos. Los datos son la Base de Datos propiamente dicha.
 Hardware. El hardware se refiere a los dispositivos de almacenamiento en donde
reside la base de datos, así como a los dispositivos periféricos (unidad de control,
canales de comunicación, etc.) necesarios para su uso.
Víctor Santiago Yunga Juela.
2011
UNIVERSIDAD TÉCNICA DE MACHALA
 Software. Está constituido por un conjunto de programas que se conoce como
Sistema Manejador de Base de Datos (DMBS: Data Base Management System).
Este sistema maneja todas las solicitudes formuladas por los usuarios a la base de
datos.
 Usuarios. Existen tres clases de usuarios relacionados con una Base de Datos:
1. El programador de aplicaciones, quien crea programas de aplicación que utilizan
la base de datos.
2. El usuario final, quien accesa la Base de Datos por medio de un lenguaje de
consulta o de programas de aplicación.
3. El administrador de la Base de Datos (DBA: Data Base Administrator), quien se
encarga del control general del Sistema de Base de Datos.
Ventajas en el uso de Bases de Datos.
 Globalización de la información. Permite a los diferentes usuarios considerar la
información como un recurso corporativo que carece de dueños específicos.
 Eliminación de información redundante. Duplicada
 Eliminación de información inconsistente. Si el sistema esta desarrollado a través
de archivos convencionales, dicha cancelación deberá operarse tanto en el archivo
de facturas del Sistema de Control de Cobranza como en el archivo de facturas del
Sistema de Comisiones.
 Permite compartir información. Varios sistemas o usuarios pueden utilizar una
misma entidad.
 Permite mantener la integridad en la información. Solo se almacena la
información correcta.
Víctor Santiago Yunga Juela.
2011
UNIVERSIDAD TÉCNICA DE MACHALA
 Independencia de datos. La independencia de datos implica un divorcio entre
programas y datos; es decir, se pueden hacer cambios a la información que contiene
la base de datos o tener acceso a la base de datos de diferente manera, sin hace
cambios en las aplicaciones o en los programas.
El sistema organizador de Base de Datos (DBMS)
El DBMS es un conjunto de programas que se encargan de manejar la creación y todos los
accesos a las bases de datos. Se compone de un lenguaje de definición de datos (DDL: Data
Definition Language), de un lenguaje de manipulación de datos (DML: Data Manipulation
Language) y de un lenguaje de consulta (SQL: Structured Query Language).
El lenguaje de definición de datos (DDL) es utilizado para describir todas las estructuras de
información y los programas que se usan para construir, actualizar e introducir la
información que contiene una base de datos.
El lenguaje de manipulación de datos (DML) es utilizado para escribir programas que
crean, actualizan y extraen información de las bases de datos.
El lenguaje de consulta (SQL) es empleado por el usuario para extraer información de la
base de datos. El lenguaje de consulta permite al usuario hacer requisiciones de datos sin
tener que escribir un programa, usando instrucciones como el SELECT, el PROJECT y el
JOIN.
La secuencia conceptual de operaciones que ocurren para acceder cierta información que
contiene una base de datos es la siguiente:
1 El usuario solicita cierta información contenida en la base de datos.
El DBMS intercepta este requerimiento y lo interpreta.
El DBMS realiza las operaciones necesarias para acceder y/o actualizar la información
solicitada.
Víctor Santiago Yunga Juela.
2011
UNIVERSIDAD TÉCNICA DE MACHALA
El administrador de la Base de Datos (DBA)
El DBA es la persona encargada de definir y controlar las bases de datos corporativas,
además proporciona asesoría a los usuarios y ejecutivos que la requieran.
Tipos de modelos de Datos
Existen fundamentalmente tres alternativas disponibles para diseñar las bases de datos: el
modelo jerárquico, el modelo de red y el modelo relacional.
1. El modelo jerárquico
La forma de esquematizar la información se realiza a través de representaciones
jerárquicas o relaciones de padre/hijo, de manera similar a la estructura de un árbol.
Así, el modelo jerárquico puede representar dos tipos de relaciones entre los datos:
relaciones de uno a uno y relaciones de uno a muchos.
En el primer tipo se dice que existe una relación de uno a uno si el padre de la
estructura de información tiene un solo hijo y viceversa, si el hijo tiene solamente
un padre. En el segundo tipo se dice que la relación es de uno a muchos si el padre
tiene más de un hijo, aunque cada hijo tenga un solo padre.
2. El modelo de red
El modelo de red evita esta redundancia en la información, a través de la
incorporación de un tipo de registro denominado el conector, que en este caso
pueden ser las calificaciones que obtuvieron los alumnos de cada profesor.
La dificultad surge al manejar las conexiones o ligas entre los registros y sus
correspondientes registros conectores.
3. El modelo relacional
Víctor Santiago Yunga Juela.
2011
UNIVERSIDAD TÉCNICA DE MACHALA
Se está empleando con más frecuencia en la práctica, debido el rápido
entendimiento por parte de los usuarios que no tienen conocimientos profundos
sobre Sistemas de Bases de Datos y a las ventajas que ofrece sobre los dos modelos
anteriores.
En este modelo toda la información se representa a través de arreglos
bidimensionales o tablas. Estas operaciones básicas son:

Seleccionar renglones de alguna tabla (SELECT)

Seleccionar columnas de alguna tabla (PROJECT)

Unir o juntar información de varias tablas (JOIN)
Es importante mencionar que la mayoría de los paquetes que manejan bases de datos
disponibles en el mercado poseen las instrucciones SELECT, PROJECT Y JOIN con
diferentes nombres y modalidades.
Bases de Datos distribuidas
Son las Bases de Datos que no están almacenadas totalmente en un solo lugar físico, (esta
segmentada) y se comunican por medio de enlaces de comunicaciones a través de una red
de computadoras distribuidas geográficamente.
Tendencias futuras
La explotación efectiva de la información dará ventaja competitiva a las organizaciones.
Las bases de datos orientadas a objetos empleadas para diseño y manufactura asistida por
computadora CAD/CAM serán utilizados a un mismo nivel que las Bases se Datos
relacionales de la actualidad.
Los lenguajes de consulta (SQL) permitirán el uso del lenguaje natural para solicitar
información de la Base de Datos, haciendo más rápido y fácil su manejo.
Víctor Santiago Yunga Juela.
UNIVERSIDAD TÉCNICA DE MACHALA
2011
EJEMPLOS: Bases de Datos
SQL.
ORACLE.
DBASE.
IV.
FOXPRO.
FOXBASE.
PARADOS.
ACCES.
APPROACH.
GLOBALIZACIÓN DE BASE DE DATOS
El reciente auge latinoamericano por integrar sus economías con la finalidad de obtener
ventaja competitivas ante la avasallante globalización ha obligado a repensar y reestructurar
viejos y nuevos esquemas de integración.
Sin embargo, existen muchos elementos requeridos para la integración sobre las cuales no
se ha considerado lo suficiente, ni se ha realizado el esfuerzo necesario como para sentar
estructuras organizacionales que permitan conocer hacía donde dirigir los mejores
esfuerzos y entre estas tenemos las bases de datos, almacenamiento, manejo y flujo de
información, en lo cual latinoamericana no se encuentra lo suficientemente preparada para
ir a la par con el actual proceso de integración.
En este artículo revisaremos algunas de las tendencias y esfuerzos que se están llevando a
cabo en los países de Latinoamérica en el área de la información y de manera específica la
Víctor Santiago Yunga Juela.
2011
UNIVERSIDAD TÉCNICA DE MACHALA
actividad que se está generando en la Universidad del Zulia en su Biblioteca Central "Gral.
Rafael Urdaneta"
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.
Fundamentos de la normalización
La normalización es el proceso de organizar los datos de una base de datos. Se incluye la
creación de tablas y el establecimiento de relaciones entre ellas según reglas diseñadas
tanto para proteger los datos como para hacer que la base de datos sea más flexible al
eliminar la redundancia y las dependencias incoherentes.
Los datos redundantes desperdician el espacio de disco y crean problemas de
mantenimiento. Si hay que cambiar datos que existen en más de un lugar, se deben cambiar
de la misma forma exactamente en todas sus ubicaciones. Un cambio en la dirección de un
Víctor Santiago Yunga Juela.
2011
UNIVERSIDAD TÉCNICA DE MACHALA
cliente es mucho más fácil de implementar si los datos sólo se almacenan en la tabla
Clientes y no en algún otro lugar de la base de datos.
¿Qué es una "dependencia incoherente"? Aunque es intuitivo para un usuario mirar en la
tabla Clientes para buscar la dirección de un cliente en particular, puede no tener sentido
mirar allí el salario del empleado que llama a ese cliente. El salario del empleado está
relacionado con el empleado, o depende de él, y por lo tanto se debería pasar a la tabla
Empleados. Las dependencias incoherentes pueden dificultar el acceso porque la ruta para
encontrar los datos puede no estar o estar interrumpida.
Hay algunas reglas en la normalización de una base de datos. Cada regla se denomina una
"forma normal". Si se cumple la primera regla, se dice que la base de datos está en la
"primera forma normal". Si se cumplen las tres primeras reglas, la base de datos se
considera que está en la "tercera forma normal". Aunque son posibles otros niveles de
normalización, la tercera forma normal se considera el máximo nivel necesario para la
mayor parte de las aplicaciones.
Al igual que con otras muchas reglas y especificaciones formales, en los escenarios reales
no siempre se cumplen los estándares de forma perfecta. En general, la normalización
requiere tablas adicionales y algunos clientes consideran éste un trabajo considerable. Si
decide infringir una de las tres primeras reglas de la normalización, asegúrese de que su
aplicación se anticipa a los problemas que puedan aparecer, como la existencia de datos
redundantes y de dependencias incoherentes.
El proceso de normalización
La normalización es una técnica formal para analizar relaciones basándose en su clave
principal (o claves candidatas) y en las dependencias funcionales. La técnica implica una
serie de reglas que pueden utilizarse para probar relaciones individuales, de modo que una
base de datos pueda normalizarse hasta cualquier grado deseado. Cuando un requisito no
sea satisfecho, la relación que viole dicho requisito deberá ser descompuesta en una serie de
relaciones que cumplan individualmente los requisitos de la normalización.
Víctor Santiago Yunga Juela.
UNIVERSIDAD TÉCNICA DE MACHALA
2011
Inicialmente se propusieron tres formas normales, denominadas primera forma normal
(1FN), segunda forma normal (2FN) y tercera forma normal (3FN). Posteriormente, Boyce
Codd introdujeron una definición mas fuerte de la tercera forma normal, denominada forma
normal de Boyce Codd (BCNF). Con la excepción de la forma 1NF, todas estas formas
normales están basadas en dependencias funcionales entre los atributos de una relación.
Otras formas normales, que van mas allá de la forma BCNF, fueron introducidas
posteriormente, como la cuarta forma normal (4FN) y la quinta forma normal (5FN). Sin
embargo, estas formas normales posteriores tratan con situaciones que son bastantes raras.
El proceso de normalización se suele ejecutar como una serie de pasos. Cada paso
corresponde a una forma normal específica, que tiene propiedades conocidas. A medida que
avanza el proceso de normalización, las relaciones tienen un formato cada vez mas
restringido (más fuerte) y son menos vulnerable a las anomalías de actualización. Para el
modelo de datos relacional, es importante tener en cuenta que la única forma crítica a la
hora de crear relaciones es la primera forma normal (1NF); todas las demás formas
normales son opcionales. Sin embargo, para evitar las anomalías de actualización, resulta
recomendable en general continuar con el proceso hasta alcanzar al menos la tercera forma
normal (3NF). La siguiente figura ilustra la relación entre las diversas formas normales,
mostrando que algunas relaciones 1NF están también en forma 2NF y que algunas
relaciones 2NF están también en forma 3NF, etc.
1. Primera forma normal (1NF)
Antes de analizar la primera forma normal, vamos a definir cuál es el estado anterior
a dicha primera forma normal.
Forma no normalizada.- Una tabla que contiene uno o más grupos repetitivos.
Primera forma normal (1NF).- Una relación en la que la intersección de toda fila
y columna contiene un valor y solo un valor.
Víctor Santiago Yunga Juela.
UNIVERSIDAD TÉCNICA DE MACHALA
2011
Comenzamos el proceso de normalización transfiriendo primero los datos desde el
material fuente (por ejemplo, un formulario estándar de introducción de datos) a
formato de tabla, con filas y columnas. En este formato, la tabla esta en forma no
normalizada, denominándosela tabla no normalizada.
Para transformar la tabla no normalizada a primera forma normal, tenemos que
identificar y eliminar los grupos repetitivos dentro de la tabla. Un grupo repetitivo
es un atributo, o grupo de atributos, dentro de una tabla que presentan múltiples
valores para un mismo valor de los atributos designados como clave principal de esa
tabla. Hay dos técnicas principales para eliminar los grupos repetitivos de las tablas
no normalizadas:

Introduciendo datos apropiados en las columnas vacías de las filas que
contienen los datos repetitivos. En otras palabras, llenamos los blancos
duplicando los datos no repetitivos siempre que sea necesario. Esta técnica
se suele denominar aplanamiento de la tabla.

Colocando los datos repetitivos, junto con una copia de los atributos clave
originales en una relación independiente. Algunas veces la tabla no
normalizada puede contener más de un grupo repetitivo o puede contener
grupos repetitivos dentro de otros grupos repetitivos. En tales casos, se
aplica esta técnica de forma sucesiva hasta que no quede ningún grupo
repetitivo. Un conjunto de relaciones está en la forma 1NF si no contiene
ningún grupo repetitivo.
Para ambas técnicas, las tablas resultantes se denominaran relaciones 1NF que
contienen valores atómicos (o simples) en la intersección de cada fila y columna.
Aunque ambas técnicas son correctas, la primera de ellas introduce mas redundancia
en la tabla UNF original, como parte del proceso de aplanamiento, mientras que la
técnica 2 crea dos o más relaciones con menos redundancia que en la tabla 1NF
Víctor Santiago Yunga Juela.
2011
UNIVERSIDAD TÉCNICA DE MACHALA
original. En otras palabras, la técnica 2 transforma la tabla 1NF original llevándola
más adelante en el proceso de normalización que la técnica 1.
2. Segunda forma normal (2NF)
La segunda forma normal (2NF) está basada en el concepto de dependencia
funcional completa. La segunda forma normal se aplica a las relaciones con claves
compuestas, es decir, relaciones con una clave principal compuesta de dos o más
atributos. Una relación con una clave principal de un único atributo esta
automáticamente en forma 2NF, al menos. Una relación que no esté en forma 2NF
puede sufrir las anomalías de actualizaciones. Por ejemplo, suponga que queremos
modificar el alquiler del inmueble numero PG4. Tendremos que actualizar dos
duplas en la relación Cliente Rental. Si solo se actualizara una de las duplas con el
nuevo valor del alquiler, este daría como resultado una incoherencia en la base de
datos.
Segunda forma normal (2NF).- Una reacción que está en primera forma normal y
en la que todo atributo que no sea de clave principal depende funcionalmente de
manera completa de la clave principal.
La normalización de las relaciones 1NF para transformarlas a la forma 2NF implica
la eliminación de las dependencias parciales. Si existe una dependencia parcial, se
eliminan de la relación los atributos parcialmente dependientes, situándolos en una
nueva relación junto con una copia de su determinante. El siguiente ejemplo ilustra
el proceso de conversión de relaciones 1NF en relaciones 2NF.
Tomamos como ejemplo las figuras anteriores, la relación ClientRental tiene las
siguientes dependencias funcionales:
fd1 clientNo, propertyNo
fd2 clientNo
rentStart, rentFinish (Clave primaria)
cName (Dependencia parcial)
Víctor Santiago Yunga Juela.
2011
UNIVERSIDAD TÉCNICA DE MACHALA
fd3 propertyNo
fd4 owner
fd5
clientNo,
pAddress, rent, ownerNo,oName (Dependencia parcial)
oName (Dependencia transitiva)
rentStart
propertyNo,
pAddress,
rentFinish,
rent,
ownerNo,oName (Clave candidate)
fd6 propertyNo,rentStart
clientNo, cName, rentFinish (Clave candidata)
Utilizando estas dependencias funcionales, continuamos con el proceso de
normalización de la relación ClientRental. Comenzamos comprobando si la relación
ClientRental está en forma 2NF, identificando la presencia de dependencias
parciales en la clave principal. Observamos que el atributo de cliente (cName)
depende principalmente de la clave principal; en otras palabras, depende solo del
atributo clientNo (lo que está representado como fd2). Los atributos de inmueble
(pAddress, rent, ownerNo, oName) dependen parcialmente de la clave principal, es
decir, dependen solo del atributo propertyNo (lo que está representado como fd3).
Los atributos del inmueble (rentStart y rentFinish) depende de modo completo de la
clave principal, es decir, de los atributos clientNo y propertyNo (lo que está
representado como fd1).
3. Tercera forma normal (3NF)
Aunque las relaciones 2NF tienen menos redundancia que las que están en forma
1NF, pueden seguir sufriendo de anomalías de actualización. Por ejemplo, si
queremos actualizar el nombre de un propietario, como pueda ser Tony Shaw
(ownerNo,CO93), tenemos que actualizar dos tuplas en la relación PropertyOwner
de la tabla anterior. Si actualizamos solo una tupla y no la otra, la base de datos
estará en un estado incoherente. Esta anomalía de actualización está causada por una
dependencia transitiva. Necesitamos eliminar dichas dependencias realizando la
transformación a la tercera forma normal.
Víctor Santiago Yunga Juela.
2011
UNIVERSIDAD TÉCNICA DE MACHALA
Tercera forma normal (3NF).- Una relación que está en primera y segunda formas
normales y en la que ningún atributo que no sea de clave principal depende
transitivamente de la clave principal.
La normalización de las relaciones 2NF para pasarlas a forma 3NF implica la
eliminación de las dependencias transitivas. Si existe una dependencia transitiva,
eliminamos de la relación los atributos que dependen transitivamente, situándolos
en una nueva relación junto con una copia del determinante. En el siguiente ejemplo
se ilustra el proceso de relaciones 2NF en relaciones 3NF.
Ejemplo. Tercera forma normal (3NF)
Las dependencias funcionales para las relaciones Client, Rental y PropertyOwner,
derivadas del ejemplo mencionado anteriormente:
Client
fd2 clientNo
cName (Clave principal)
Rental
fd1 clientNo, propertyNo
fd5 clientNo,rentStart
propertyNo,rentFinish (Clave principal)
fd6 propertyNo,rentStart
fd3 propertyNo
fd4 ownerNo
rentStart, rentFinish (Clave principal)
clientNo,rentFinish (Clave principal)
pAddress, rent, ownerNo,oName (Clave principal)
oName (Dependencia transitiva)
Todos los atributos que no son de clave principal dentro de las relaciones Cliente y
Rental dependen funcionalmente tan solo de sus respectivas claves primarias. Las
relaciones Cliente y Rental no tienen dependencias transitivas y están ya por tanto
en forma 3NF. Observe que cuando una dependencia funcional esta etiquetada con
Víctor Santiago Yunga Juela.
2011
UNIVERSIDAD TÉCNICA DE MACHALA
una prima (como por ejemplo fd5), esto indica que la dependencia se ha modificado
con respecto a la dependencia funcional original.
Todos los atributos que no son de clave principal dentro de la relación
PropertyOwner dependen funcionalmente de la clave principal, con la excepción de
oName, que depende transitivamente de owner (lo que representa como fd4). Esta
dependencia transitiva ya fue
previamente identificada en las figuras anteriormente mencionada. Para transformar
la relación PropertyOwner a forma 3NF, debemos primero eliminar la dependencia
transitiva creando dos nuevas relaciones denominadas PropertyForRent y Owner,
como se muestra en la siguiente figura. Las nuevas relaciones tienen la estructura:
PropertyForRent (propertyNo,pAddress,rent,ownerNo)
Owner (ownerNo,oName)
Las relaciones PropertyForRent y Owner están en forma 3NF, ya que no hay mas
dependencias transitivas con respecto a la clave principal.
Víctor Santiago Yunga Juela.
Descargar