martes, 27 de noviembre de 2012

investigación de normalizacion de base de datos

NORMALIZACION DE BASE 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.



Una dependencia funcional es una conexión entre uno o más atributos. Por ejemplo si se conoce el valor de DNI tiene una conexión con Apellido Nombre .
Las dependencias funcionales del sistema se escriben utilizando una flecha, de la siguiente manera:
FechaDeNacimiento   Edad
De la normalización (lógica) a la implementación (física o real) puede ser sugerible tener éstas dependencias funcionales para lograr la eficiencia en las tablas.


dependencia funcional Reflexiva

Si "y" está incluido en "x" entonces x   y
A partir de cualquier atributo o conjunto de atributos siempre puede deducirse él mismo. Si la dirección o el nombre de una persona están incluidos en el DNI, entonces con el DNI podemos determinar la dirección o su nombre.

Dependencia funcional Aumentativa

 entonces 
DNI   nombre
DNI,dirección   nombre,dirección
Si con el DNI se determina el nombre de una persona, entonces con el DNI más la dirección también se determina el nombre y su dirección.




martes, 16 de octubre de 2012

tarea 1 de la unidad numero 2


Fundamentos de base de datos capitulo. 2

EJERCICIOS

2.1 Explíquense las diferencias entre los términos clave primaria, clave candidata y superclave. La clave primaria es una de las claves candidatas que se elige, por el diseñador de la base de datos, como el elemento principal para identificar las entidades dentro un conjunto de entidades. Una superclave es un conjunto de uno o más atributos que, tomados colectivamente, permiten identificar de forma única una entidad en el conjunto de entidades. Una superclave puede contener atributos ajenos. Se denomina clave candidata Si K es una superclave, entonces también lo es cualquier superconjunto de K. Una superclave para la que ningún subconjunto propio es también superclave.
2.2 Constrúyase un diagrama E-R para una compañía de seguros de coches cuyos clientes poseen uno o más coches. Cada coche tiene asociado un número de cero a cualquier valor que almacena el número de accidentes.

2.3. Constrúyase un diagrama E-R para un hospital con un conjunto de pacientes y un conjunto de médicos. Asóciese con cada paciente un registro de las diferentes pruebas y exámenes realizados.


2.9 Explíquense las diferencias entre conjunto de entidades débiles y fuertes.

Un conjunto de entidades fuertes tiene una clave primaria. Todas las tuplas del conjunto se distinguen por medio de esa clave. Un conjunto de entidades débiles no tiene clave primaria, a menos que se incluyan los atributos del conjunto de entidades fuertes del que depende. En un conjunto de entidades débiles las tuplas están divididas según su relación con las de la entidad fuerte.
2.11. Defínase el concepto de agregación. Propónganse ejemplos para los que este concepto es útil.
La agregación es una abstracción a través de la cual las relaciones se tratan como entidades de nivel más alto. Así, la relación entre las entidades A y B se trata como si fuera una entidad C.



aprofesor que trabajan por proyectos. profesor trabajando para un proyecto en particular utiliza diversa acciones

2.16. Un diagrama E-R se puede ver como un grafo. ¿Qué significan los siguientes términos de estructura en un esquema de desarrollo?
a. El grafo es inconexo.
b. El grafo es acíclico.

a.    Si un par de conjuntos de entidades están conectados por una línea en un diagrama E-R, los conjuntos de entidades están relacionados, aunque sea indirectamente. Un grafo desconectado implica que hay parejas de conjuntos de entidades que no están relacionadas entre sí. Si se divide el grafo en los componentes conectados se tiene, en efecto, una base de datos independiente.
b.    Como se ha indicado en la respuesta del apartado anterior, una conexión en el grafo entre un par de conjuntos de entidades indica una relación (posiblemente indirecta) entre ellos. Si hay un ciclo en el grafo, entonces cada par de conjuntos de entidades del ciclo están relacionadas entre sí en, al menos, dos maneras distintas. Si el diagrama E-R es acíclico hay sólo una conexión entre cada par de conjuntos de entidades y, por lo tanto, sólo una relación.




martes, 4 de septiembre de 2012

tarea numero 1

UNIDAD 1
TAREA 1
CUESTIONARIO DE LA UNIDAD 1
1.- ¿Cuáles son las cuatro diferencias principales entre un sistema de procesamiento de archivos y un SGBD?
El sistema de procesamiento de archivos tiene como inconvenientes los siguientes puntos:
*Redundancia e inconsistencia de datos
*Dificultad en el acceso a los datos
*Aislamiento de datos.
*Anomalías en el acceso concurrente
Mientras que el sistema gestor de base de datos tiene las siguientes propiedades:
*Atomicidad
*Consultas de datos
*problemas de seguridad
*Problemas de integridad

2.- En este capítulo se han descrito las diferentes ventajas principales de un sistema gestor de bases de datos. ¿Cuáles son los dos inconvenientes?
1.-las bases de datos pueden ser muy grandes dependencia del tamaño de la empresa
2.-las bases de datos necesitan actualización constante

3.-Explíquese la diferencia entre independencia de datos física y lógica.
La independencia física se refiere al como se almacenan realmente los datos, es decir, las propiedades que deben tener para ser validos y almacenables, la independencia lógica se refiere a que datos son realmente almacenados en una base de datos; es decir, cuales son verdaderamente importantes para el usuario final

4.-Lístense las cinco responsabilidades del sistema gestor de la base de datos. Para cada responsabilidad explíquense los problemas que ocurrirían si no se realizara esa función
*atomicidad.- cuidar que se verifiquen los cambios en la base de datos sino se perderá información
*consistencia.- al existir se pierden los resultados esperados o cambios que se desean hacer sobre la base de datos
*transacciones.- sino existe el sistema puede guardar información errónea y se imposibilita la capacidad para hacer correcciones sobre datos desactualizados
*componente de gestión de transacciones.- al no existir se pierden los valores en caso de un fallo
*recuperación de fallos, debe detectar fallos y auto restaurar la base de datos a un estado anterior

5.- ¿Cuáles son las cinco funciones principales del administrador de la base de datos?
*Definición del esquema
*Definición de la estructura y del método de acceso.
*Modificación del esquema y de la organización física
*Concesión de autorización para el acceso a los datos
*Mantenimiento rutinario

6.- Lístense siete lenguajes de programación que sean procedimentales y dos que sean no procedimentales. ¿Qué grupo es más fácil de aprender a usar? Explíquese la respuesta.
procedimentales:
1.-cobol
2.-c
3.-c++
4.-java
5.-C#
6.-pascal
7.-delphi
no procedimentales:
ODBC
JDBC
El mas fácil de programar es el procedimental ya que se limita a tareas especificas en la base de datos mientras que los no procedimentales abarcan todas las funciones generales y la interactividad  y limitaciones de los programas procedimentales

7.- Lístense los seis pasos principales que se deberían dar en la realización de una base de datos para una empresa particular.
1.-definir el costo de mantenimiento e implementación de la base de datos (costos)
2.-definir el espacio en disco duro a utilizar (almacenamiento)
3.-definir los datos que se almacenaran en la base datos (esquema)
4.-crear los programas para la gestión de la base de datos (integridad de la base de datos)
5.-imponer las reglas para las transacciones de datos (atomicidad y consistencia)
6.-tener respaldos de la base de datos (para mantenimiento)
7.-creacion de los niveles de acceso a la base de datos (seguridad y password)

8.- Considérese un array de enteros bidimensional de tamaño n × m que se va a usar en su lenguaje de programación preferido. Usando el array como ejemplo, ilústrese la diferencia (a) entre los tres niveles de abstracción y (b) entre esquema y ejemplares

Nivel físico: primero se crean los arreglos con las variables deseadas, que posteriormente serviran para hacer referencia a ellas durante el programa, posteriormente esos arreglos se deberan guardar mediante punteros en un archivo con extension txt y de nombre estudiantes
Nivel logico: se guardaran dentro de los arreglos los nombres y las matriculas de los alumnos
Nivel de vistas: el usuario normal tendra acceso a la consulta de su nombre dentro de la base de datos pero el administrador tendra la opcion para hacer la consulta, el ordenamiento por apellidos, dar de baja, altas y la modificacion de la informacion de los alumnos.

  Vease la siguiente imagen que ilustra el esquema y ejemplares de la base de datos: