martes, 21 de junio de 2011

INTRODUCCION



Microsoft Access 
Es un programa, utilizado en los sistemas operativos Microsoft Windows, para la gestión de bases de datos creado y modificado por Microsoft y orientado a ser usado en entornos personal o en pequeñas organizaciones. Es un componente de la suite Microsoft Office. Permite crear ficheros de bases de datos relacionales que pueden ser fácilmente gestionadas por una interfaz gráfica sencilla. Además, estas bases de datos pueden ser consultadas por otros programas. Dentro de un sistema de información, entraría dentro de la categoría de gestión, y no en la de ofimática, como podría pensarse. Este programa permite manipular los datos en forma de tablas (formadas por filas y columnas), crear relaciones entre tablas, consultas, formularios para introducir datos e informes para presentar la información

Mas informacion.

www.Wikiversidad.org

BASE DE DATOS


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.
Una base de datos o banco de datos (en ocasiones abreviada con la sigla BD o con la abreviatura b. d.) es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. En este sentido, una biblioteca puede considerarse una base de datos compuesta en su mayoría por documentos y textos impresos en papel e indexados para su consulta. En la actualidad, y debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de las bases de datos están en formato digital (electrónico), que ofrece un amplio rango de soluciones al problema de almacenar datos.
Existen programas denominados sistemas gestores de bases de datos, abreviado SGBD, que permiten almacenar y posteriormente acceder a los datos de forma rápida y estructurada. Las propiedades de estos SGBD, así como su utilización y administración, se estudian dentro del ámbito de la informática.
Las aplicaciones más usuales son para la gestión de empresas e instituciones públicas. También son ampliamente utilizadas en entornos científicos con el objeto de almacenar la información experimental.
Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se encuentran protegidos por las leyes de varios países. Por ejemplo, en España los datos personales se encuentran protegidos por la Ley Orgánica de Protección de Datos de Carácter Personal

SISTEMA DE GESTION DE BASE DE DATOS


Sistema de Gestión de Base de Datos (SGBD)
Los Sistemas de Gestión de Base de Datos (en inglés DataBase Management System) son un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. Se compone de un lenguaje de definición de datos, de un lenguaje de manipulación de datos y de un lenguaje de consulta.
Ventajas de las bases de datos
Control sobre la redundancia de datos:
Los sistemas de ficheros almacenan varias copias de los mismos datos en ficheros distintos. Esto hace que se desperdicie espacio de almacenamiento, además de provocar la falta de consistencia de datos.
En los sistemas de bases de datos todos estos ficheros están integrados, por lo que no se almacenan varias copias de los mismos datos. Sin embargo, en una base de datos no se puede eliminar la redundancia completamente, ya que en ocasiones es necesaria para modelar las relaciones entre los datos.
Consistencia de datos:
Eliminando o controlando las redundancias de datos se reduce en gran medida el riesgo de que haya inconsistencias. Si un dato está almacenado una sola vez, cualquier actualización se debe realizar sólo una vez, y está disponible para todos los usuarios inmediatamente. Si un dato está duplicado y el sistema conoce esta redundancia, el propio sistema puede encargarse de garantizar que todas las copias se mantienen consistentes.
Compartición de datos:
En los sistemas de ficheros, los ficheros pertenecen a las personas o a los departamentos que los utilizan. Pero en los sistemas de bases de datos, la base de datos pertenece a la empresa y puede ser compartida por todos los usuarios que estén autorizados.
Mantenimiento de estándares:

TIPOS DE BASE DE DATOS


TIPOS DE BASE DE DATOS
Modelos tradicionales.
Estudiaremos en este epígrafe los sistemas de bases de datos más utilizados hasta el momento, aunque quizás en pocos años, los sistemas orientados a objeto deban ser incluidos en este epígrafe.
No obstante, para ser realistas, hay que recordar que no es verdad que la práctica totalidad de las empresas dejen descansar sus datos sobre bases de datos de alguno de estos tres tipos. De hecho, la triste realidad es que muchas entidades, especialmente los bancos, por el hecho de haber sido las primeras en informatizarse, siguen teniendo todos sus datos sobre ficheros electrónicos simples, manejados directamente a través del S.O., y no con la intervención de un S.G.B.D. que facilite su gestión y mantenimiento.
No por ello debe pensar el estudiante que, en tal caso, el emplear una base de datos es algo inútil y falto de esencia. De hecho, la realidad que circunda a Málaga, no es una realidad de grandes empresas, excepto quizás los bancos, sino un mundo de pequeñas y medianas empresas, que por haberse incorporado más tardíamente al mundo de los ordenadores, sí que han adoptado las bases de datos como responsable del almacenamiento de sus datos. Por otro lado, los sistemas de reserva de billetes, y otros sistemas que tienen en común una enorme cantidad de usuarios dispersos efectuando peticiones al sistema central, también utilizan bases de datos, debido a que el concepto de transacción que éstas facilitan hace mucho más fácil su programación, asegurando además el buen funcionamiento global de toda red del usuario.

Modelo jerárquico.
El sistema jerárquico más comúnmente conocido es el sistema IMS de IBM. Esta base de datos tiene como objetivo establecer una jerarquía de fichas, de manera que cada ficha puede contener a su vez listas de otras fichas, y así sucesivamente. P.ej., una ficha de clientes puede contener una lista de fichas de facturas, cada una de las cuales puede contener a su vez una lista de fichas de líneas de detalle que describen los servicios facturados.
Una base de datos jerárquica está compuesta por una secuencia de bases de datos físicas, de manera que cada base de datos física se compone de todas las ocurrencias de un tipo de registro o ficha determinada.
Una ocurrencia de registro es una jerarquía de ocurrencias de segmento.
Cada ocurrencia de segmento está formada por un conjunto de ocurrencias o instancias de los campos que componen el segmento.
P.ej., en la figura siguiente tenemos una ocurrencia del tipo de registro Curso, de manera que como cabeza principal tenemos una instancia del segmento curso, de la cual dependen una o varias instancias de los segmentos Requisito y Oferta; a su vez, de Oferta dependen otros que son Profesor
y Estudiante.
Cabe distinguir en este punto entre el concepto de tipo de registro, y ocurrencia o instancia de registro. El tipo define la estructura general que debe poseer, o sea, los campos de cada uno de sus segmentos, y la estructura jerárquica entre ellos. Una instancia es un valor de un tipo de registro. Para que quede más claro, un tipo de registro es como un tipo de persona: blanco, negro, amarillo, aceitunado, etc., mientras que una instancia es una persona concreta perteneciente a uno de estos tipos: Pablo Picasso, Nelson Mandela, Mao Tse Tung, Toro Sentado, etc.

Modelo en red.
Podemos considerar al modelo de bases de datos en red como de una potencia intermedia entre el jerárquico y el relacional que estudiaremos más adelante. Su estructura es parecida a la jerárquica aunque bastante más compleja, con lo que se consiguen evitar, al menos en parte, los problemas de aquél.
Los conceptos fundamentales que debe conocer el administrador para definir el esquema de una base de datos jerárquica, son los siguientes:
- Registro: Viene a ser como cada una de las fichas almacenadas en un fichero convencional.
- Campos o elementos de datos. Son cada uno de los apartados de que se compone una ficha.
- Conjunto: Es el concepto que permite relacionar entre sí tipos de registro distintos
Podemos imaginar los registros simplemente como fichas de un fichero. Para ilustrar el concepto de conjunto, supongamos que tenemos un tipo de registro de clientes, y un tipo de registro de vuelos de avión, y supongamos que queremos asociar ambas informaciones, de manera que para cada vuelo queremos saber cuáles son los pasajeros que viajan en él. La forma de hacerlo es a través de un conjunto. Un conjunto relaciona dos tipos de registro. Uno de ellos es el registro propietario del conjunto, y el otro es el miembro. Veamos el diagrama de la figura siguiente que nos aclarará las cosas un poco más.

Modelo relacional.
En este apartado tan sólo daremos unas nociones iníciales sobre este modelo, ya que todo nuestro trabajo se basará en él, y será estudiado con mucho mayor detalle en capítulos posteriores.
Este modelo intenta representar la base de datos como un conjunto de tablas. Aunque las tablas son un concepto simple e intuitivo, existe una correspondencia directa entre el concepto informático de una tabla, y el concepto matemático de relación, lo cual es una gran ventaja, pues permite efectuar formalizaciones de una forma estricta mediante las herramientas matemáticas asociadas, como pueda ser el álgebra relacional en el ámbito de las consultas.
Gracias a Dios, no será necesario enfrentarnos con todos estos formalismos propios de los matemáticos, sino que dispondremos de unas herramientas fáciles de manejar que nos permitirán interactuar con la base de datos.
Los conceptos básicos del modelo relacional son:
- Registro: Es algo así como cada ficha de un fichero convencional.
- Tabla: Es un conjunto de fichas de un mismo tipo.

Modelos avanzados.
Las bases de datos relacionales han sido y siguen siendo ampliamente utilizadas para una extensa gama de aplicaciones. Sin embargo, el aumento de potencia de los ordenadores personales, ha hecho aparecer nuevas aplicaciones potentes que requieren la utilización de datos complejamente relacionados o con necesidades de consultas muy particulares, como puedan ser p.ej., los sistemas de información geográficos, el diseño de circuitos electrónicos por ordenador, etc.
Otro de los problemas que poseen los sistemas relacionales es el uso de los lenguajes de manipulación y definición de datos, que, aunque son muy simples de manejar directamente por un usuario, son difíciles de insertar en un lenguaje de programación convencional, lo que da lugar a un problema de impedancia o resistencia de un lenguaje a ser utilizado junto con otro.
Otros problemas se refieren a la inclusión del concepto de orden en los registros almacenados.
Dado que una tabla es un conjunto de registros, y un conjunto no permite ni repeticiones de sus elementos, ni establece un orden entre ellos, es imposible representar ciertas características de datos muy particulares.

Modelo orientado a objetos.
Actualmente, la creación de programas más grandes y complejos, ha hecho avanzar los métodos de programación hacia nuevas formas que permiten el trabajo en equipo de una forma más eficaz y en la que se disminuyen los problemas de coordinación. Uno de estos métodos consiste en la programación orientada a objetos (POO), que trata los problemas desde un punto de vista realista, y modelando cada uno de ellos como si se tratase de un conjunto de elementos u objetos que interrelacionan entre sí para solucionar el problema.
Para entender mejor esta filosofía, podemos pensar en ella como en el funcionamiento de un reloj de cuerda. Un reloj de cuerda posee numerosos elementos que interactúan entre sí para obtener como resultado final una determinada posición de las manecillas, que son interpretadas por una persona como la hora actual.

De este ejemplo podemos sacar varios conceptos útiles:
Clase. Cuando hay varios objetos semejantes, pueden agruparse en una clase. De hecho, todo objeto debe pertenecer a una clase, que define sus características generales..
Estado. Son las características propias de cada objeto. Siguiendo con el caso de los engranajes, su estado puede ser el número de dientes, el tamaño, etc. El estado se utiliza especialmente para guardar la situación del objeto que varía con el tiempo.
Encapsulación. Cada objeto es consciente de sus propias características. El engranaje «sabe» que si recibe una fuerza en uno de sus dientes, debe girar, y lo sabe porque obedece a unas leyes físicas.
En el caso de un programa, es el programador el que debe indicarle al objeto cómo comportarse ante cada estímulo del exterior o de otro objeto.
Mensaje. Es cada uno de los estímulos que se envían a un objeto.
Herencia. Para facilitar la programación, se puede establecer toda una jerarquía de tipos o clases.
De ella podemos derivar otras tres: Eng. fijo, Cremallera, y Eng. helicoidal. Cada una de estas clases especializa la clase general, con la ventaja de que las características comunes a los tres tipos de engranajes sólo hay que decirlas una vez.

Modelo declarativo.
El enfoque de las bases de datos declarativas es sumamente intuitivo para el usuario, y le permite abstraerse de los problemas de programación inherentes a otros métodos. Este modelo suele usarse para bases de conocimiento, que no son más que bases de datos con mecanismos de consulta en los que el trabajo de extracción de información a partir de los datos recae en realidad sobre el ordenador, en lugar de sobre el usuario. Estos mecanismos de consulta exigen que la información se halle distribuída de manera que haga eficiente las búsquedas de los datos, ya que normalmente las consultas de este tipo requieren acceder una y otra vez a los datos en busca de patrones que se adecúen a las características de los datos que ha solicitado el usuario. Sin embargo, no hablaremos de la organización de los datos, sino sólo de las formas de las consultas.

Mas informacion:

www.Wikiversidad.org

ESQUEMA DE BASE DE DATOS


ESQUEMA DE BASE DE DATOS
Para crear el modelo de objetos de datos que utiliza Symfony, se debe traducir el modelo relacional de la base de datos a un modelo de objetos de datos. Para realizar ese mapeo o traducción, el ORM necesita una descripción del modelo relacional, que se llama "esquema" (schema). En el esquema se definen las tablas, sus relaciones y las características de sus columnas.

En este mostraremos la implementación que bajo el modelo relacional de datos hemos llevado a cabo para nuestro lexicón multilingüe, mostrando los diagramas conceptuales y explicando las circunstancias que nos han llevado a adoptar determinadas decisiones. Pasaremos por alto la descripción detallada de la base de datos (tipos de datos, restricciones, código SQL de consultas, etc.). Lo realmente interesante de una base de datos y lo que determina en gran medida su funcionalidad es su esquema conceptual.

Mas informacion:


www.Wikiversidad.org

MODELO ENTIDAD - RELACION


Modelo Entidad-Relación
 Entidad: Objeto del mundo real distinguible de otros objetos. Una entidad se describe usando un conjunto de atributo.
 Conjunto de entidades (tipo de entidad): Una colección de entidades similares (ej. todos los empleados).
 Todas las entidades de un conjunto tiene los mismos atributos (a excepción de una jerarquía)
 Cada conjunto de entidades tiene una llave
 Cada atributo tiene un dominio

Un tipo de entidad define el esquema o intensión para el conjunto de entidades que comparten la misma estructura. La colección de entidades de un tipo particular de entidad define la extensión del tipo de entidad.
.
 Atributos: En un MER existen diferentes tipos de atributos:
 Atributos simples o atómicos: son atributos no divisibles.
 Atributos compuestos: son atributos que se pueden dividir en sus componentes, pudiendo formar jerarquías.
 Atributos mono valuados: son atributos que tienen un solo valor para una entidad en particular.
 Atributos multivaluados: son atributos que tienen límites inferior y superior en el número de valores para una entidad.
 Atributos almacenados
 Atributos derivados
 Valores nulos
 Atributos complejos: son atributos compuestos o multivaluados anidados de una manera arbitraria (lista, conjuntos).

Relación: Asociación entre dos o más entidades.
Por ejemplo, X trabajo en departamento Y.
 Conjunto de relaciones: Colección de relaciones similares:
 Un conjunto de relaciones n-area R relaciona n conjuntos de entidades E1,…,En; cada conjunto de entidades Ej en la relación R involucra alguna entidad de Ej.
 El mismo conjunto de entidades puede participar en distintos conjuntos de relaciones, o en diferentes “roles” en el mismo conjunto.

Restricciones de llave
 Relación “Trabaja_en”:
 Un empleado puede trabajar en un departamento
 Un departamento puede tener varios empleados
 Sin embargo, cada departamento puede tener a lo más un jefe por la restricción de llave de la relación administra

Restricciones estructurales
 Es una notación alternativa a las restricciones de llave (cardinalidad) que incluye un par de números enteros (mín, máx) a cada participación.

Restricciones de participación
 La existencia de una entidad depende de que esté relacionado con otra entidad a través de un tipo de vínculo.

Entidades Débiles
 Una entidad es identificada únicamente por medio de su llave más la llave de la entidad padre.


 Un conjunto de entidades padres y de entidades débiles deben participar en una relación uno a muchos (un padre, muchas entidades débiles)
 Un conjunto de entidades débiles debe tener participación total en este conjunto de relaciones identificadores (o propietarias).
 Se denomina relación identificadora a la relación de un tipo de entidad débil con su propietario

Mas informacion:


www.Wikiversidad.org

OBJETIVOS DE UNA BASE DE DATOS


OBJETIVOS DE UNA BASE ADE DATOS

Los objetivos principales de un sistema de base de datos es disminuir los siguientes aspectos:
  • Redundancia e inconsistencia de datos:
Puesto que los archivos que mantienen almacenada la información son creados por diferentes tipos de programas de aplicación existe la posibilidad de que si no se controla detalladamente el almacenamiento, se pueda originar un duplicado de información, es decir que la misma información sea más de una vez en un dispositivo de almacenamiento. Esto aumenta los costos de almacenamiento y acceso a los datos, además de que puede originar la inconsistencia de los datos - es decir diversas copias de un mismo dato no concuerdan entre si -, por ejemplo: que se actualiza la dirección de un cliente en un archivo y que en otros archivos permanezca la anterior.
  • Dificultad para tener acceso a los datos:
Un sistema de base de datos debe contemplar un entorno de datos que le facilite al usuario el manejo de los mismos. Supóngase un banco, y que uno de los gerentes necesita averiguar los nombres de todos los clientes que viven dentro del código postal 78733 de la ciudad. El gerente pide al departamento de procesamiento de datos que genere la lista correspondiente. Puesto que esta situación no fue prevista en el diseño del sistema, no existe ninguna aplicación de consulta que permita este tipo de solicitud, esto ocasiona una deficiencia del sistema.
  • Aislamiento de los datos:
Puesto que los datos están repartidos en varios archivos, y estos no pueden tener diferentes formatos, es difícil escribir nuevos programas de aplicación para obtener los datos apropiados.
  • Anomalías del acceso concurrente:
Para mejorar el funcionamiento global del sistema y obtener un tiempo de respuesta más rápido, muchos sistemas permiten que múltiples usuarios actualicen los datos simultáneamente. En un entorno así la interacción de actualizaciones concurrentes puede dar por resultado datos inconsistentes. Para prevenir esta posibilidad debe mantenerse alguna forma de supervisión en el sistema.
Problemas de seguridad:
La información de toda empresa es importante, aunque unos datos lo son más que otros, por tal motivo se debe considerar el control de acceso a los mismos, no todos los usuarios pueden visualizar alguna información, por tal motivo para que un sistema de base de datos sea confiable debe mantener un grado de seguridad que garantice la autentificación y protección de los datos. En un banco por ejemplo, el personal de nóminas sólo necesita ver la parte de la base de datos que tiene información acerca de los distintos empleados del banco y no a otro tipo de información.
  • Problemas de integridad:
Los valores de datos almacenados en la base de datos deben satisfacer cierto tipo de restricciones de consistencia. Estas restricciones se hacen cumplir en el sistema añadiendo códigos apropiados en los diversos programas de aplicación. 

Mas informacion:

www.Wikiversidad.org