miércoles, 20 de julio de 2011

Utilidades de la base de datos

Desde esta opcion del menú de Access, podemos realizar las siguientes 
operaciones: 


•  Convertir Base de datos 
•  Compactar y reparar base de datos 
•  Administrador de tablas vinculadas 
•  Divisor de base de datos 
•  Administrador del panel de control 
•  Asistente para convertir a SQL Server 
•  Crear archivo MDE 


Convertir Base de datos nos permite actualizar una base de datos creada con 
una versión anterior de access, por ejemplo pasar de Access 97 a una version 
más actual, en este caso seria la version de access que estemos utilizando. Y 
tambien podemos pasar de la version actual a una version anterior, 
seleccionando para ello la opcion “a una version anterior de la base de datos 
de access”. 
Compactar y reparar base de datos nos permite eliminar el espacio 
reservado no ocupado por registros  y que hace que nuestra base de datos 
tenga un peso mayor. Al compactar  la base de datos, tambien ganamos en 
rendimiento y en rapidez a la hora de hacer las busquedas de los registros y a 
la hora de movernos por los objetos de la base de datos. 
Administrador de tablas vinculadas esta opcion nos permite a través de un 
cuadro de dialogo, donde podemos ver las tablas de access, hojas de cálculo, 
o cualquier elemento que esté vinculado a nuestra base de datos, seleccionarlo 
para poder así actualizarlo. Asmismo, nos muestra la ruta de origen, es decir el 
archivo externo al que pertenece, por ejemplo imaginar que tenemos una base 
de datos de clientes que contiene una tabla con la ficha de los clientes y 
queremos hacer otra base de datos diferente, pero necesitamos esa tabla de 
ficha de clientes de nuestra base de datos de clientes. Para no tener que 
repetir la informacion o no tener que importar continuamente, cada vez que se 
produzca un cambio en la base de datos de cliente, lo que haremos sera, 
vinvular la tabla ficha de clienbtes a nuestra base de datos, con lo que se 
consigue que la informacion este en todo momento actualizada y compartida, 
pero si hiciesemos un cambio en la tabla de ficha de clientes a nivel de 
estructura, como modificar una propiedad de un campo o añadir o suprimir 
campos, estas operaciones no se actualizan automaticamente y es por eso que 
podemos utilizar esta herramienta de administracion de tablas vinculadas, para 
poder actualizar todas o aquellas tablas que hayan sido modificadas a nivel de 
estructura. 


Divisor de base de datos esta opcion nos permite separar la base de datos, 
de modo que tendremos una base de datos con los objetos tablas, donde se 
almacenaran todos los registros y otra base de datos, con el resto de objetos 
necesarios para gestionar nuestra base de datos, objetos tales como consultas, formularios, informes, macros, modulos, paginas de acceso a datos. Separando 
la base de datos, podemos compartir las tablas con mas de una base de datos, 
simplemente vinculando estas a las  base de datos que las necesitemos y 
creando de este modo un enlace entre los datos, que estaran en las tablas y el 
resto de objetos. Esta operación tambien nos permite liberar mucho espacio, el 
que ocuparian los objetos que no son tablas y asi la base de datos con las 
tablas seria menos pesada y en consecuencia mas rapida. Por otro lado este 
es el metodo que se utiliza cuando una base de datos ha de ser gestionada por 
mas de un usuario y de este modo la informacion siempre se actualiza en un 
mismo destino y todos los usuarios  que utilizan la base de datos tienen la 
informacion actualizada y disponible en cada momento. 
Administrador del panel de control  esta opcion nos permite crear de una 
forma dirigida, un sistema de formularios para poder “conectar” las diferentes 
pantallas que el usuario necesitara  para poder gestionar la base de datos, 
vendria a ser como un sistema de menus con botones que nos van a permitir 
realizar una serie de operaciones con la base de datos. En cualquier caso, el 
desarrollador de la base de datos, puede crear los formularios 
independientemente y en ellos colocar los botones que necesite para conectar 
las diferentes secciones en la gestion de la base de datos. La conexión entre 
los formularios se puede hacer con macros y/o con módulos. 
Asistente para convertir a SQL Server  esta opción permite al usuario 
convertir la base de datos de Access, la que tiene actualmente en uso, a una 
version de base de datos de Microsoft SQL Server. Se puede convertir a una 
base de datos de SQL ya existente o crear una nueva, normalmente esta es la 
opcion predeterminada. Toda la operativa de la conversion se realiza desde un 
asistente hasta concluir el proceso. Y la pregunta que nos hacemos es ¿porque 
hemos de convertir a una base de datos de SQL?, bien a continuacion muestro 
algunas de las consideraciones a tener en cuenta para tomar la decision de 
convertir la base de datos. 
Con el transcurso del tiempo, la mayoría de las aplicaciones de base de datos 
crecen, se vuelven más complejas  y necesitan ser compatibles para más 
usuarios. En algún momento de la existencia de la aplicación de base de datos 
de Microsoft Access, conviene considerar la posibilidad de una conversión a 
Microsoft SQL Server para optimizar el rendimiento, escalabilidad, seguridad, 
confiabilidad, disponibilidad y capacidad de recuperación de la base de datos y 
de la aplicación. 

•  Altos niveles de rendimiento y escalabilidad 
•  Mayor disponibilidad 
•  Mejora de la seguridad 
•  Capacidad de recuperación inmediata 
•  Transacciones y datos distribuidos de confianza 
•  Procesamiento basado en el servidor



bases de datos muy grandes con un tamaño de hasta 1 terabyte, que es 
muy superior al límite actual para una base de datos de Access 
establecido en 2 gigabytes. Finalmente, el funcionamiento de SQL Server 
en Microsoft Windows NT es muy eficaz porque se pueden procesar 
consultas en paralelo (mediante el empleo de varios subprocesos nativos 
dentro de un proceso único para tratar las solicitudes del usuario) y se 
minimizan las necesidades de memoria adicional cuando se agregan más 
usuarios.  
Mayor disponibilidad 
Mediante el empleo de Microsoft SQL Server se puede realizar una copia 
de seguridad dinámica, ya sea incremental o completa, de la base de 
datos mientras se está utilizando. Por consiguiente, no es necesario exigir 
a los usuarios que salgan de la base de datos para realizar una copia de 
seguridad de los datos. Esto significa que la base de datos se puede estar 
ejecutando las veinticuatro horas del día y los siete días de la semana. 
Mejora de la seguridad 
Microsoft SQL Server se puede integrar con la seguridad del sistema 
operativo Windows NT para proporcionar  un único inicio de sesión en la 
red y en la base de datos. Esto facilita en gran medida la administración 
de esquemas de seguridad complejos. Asimismo, una base de datos de 
SQL Server en un servidor goza de una mayor protección, dado que no es 
posible el acceso directo de usuarios no autorizados al archivo de base de 
datos sin antes obtener acceso al servidor.  
Capacidad de recuperación inmediata 
Si se produce un fallo en el sistema (por ejemplo, un bloqueo del sistema 
operativo o un corte de suministro eléctrico), Microsoft SQL Server tiene 
un mecanismo que recupera en unos minutos una base de datos en su 
último estado de coherencia, sin la  intervención del administrador de la 
base de datos. Las aplicaciones críticas se pueden recuperar y volver a 
ejecutar inmediatamente. 
Transacciones y datos distribuidos de confianza 
El procesamiento de transacciones es  un requisito vital para un sistema 
que está diseñado para admitir aplicaciones críticas como, por ejemplo, 
operaciones bancarias y entrada de pedidos en pantalla. Microsoft SQL 
Server admite transacciones atómicas con registro de transacciones, con 
lo que se garantiza que todos los cambios realizados en una transacción 
se guardan o se revocan. 


La coherencia y la capacidad de recuperación de una transacción de base 
de datos están garantizadas incluso si se produce un fallo en el sistema y 
en el transcurso de actualizaciones  complejas por parte de más de un 
usuario. SQL Server trata todos los cambios de una base de datos dentro 
de una transacción como una sola unidad de trabajo. Por definición, una 
transacción completa bien se ejecuta de forma segura reflejándose todos 
los cambios resultantes en la  base de datos, o bien se revoca 
deshaciéndose todos los cambios efectuados en la base de datos. 


Beneficios del Enfoque de base de datos
             A continuación identificaremos algunas de las ventajas específicas que surgen del control centralizado. 
  • Los datos pueden compartirse.- Significa que las aplicaciones existentes puedan compartir la información de la base de datos, y que también sea posible desarrollar nuevas aplicaciones para operar sobre los mismos datos.
  • Es posible reducir la redundancia.- En sistemas que no son de bases de datos, cada aplicación tiene sus propios archivos exclusivos. Con la aplicación de las bases de datos estos archivos podrían integrarse y reducir la redundancia.
  • Es posible (hasta cierto grado) evitar la inconsistencia.- Cuando existen elementos en la base de datos que están representados en entidades distintas y el DBMS no está enterado de la duplicidad (redundancia NO CONTROLADA), habrá ocasiones en las que las dos entidades no coincidan: digamos, cuando una de ellas ha sido actualizada y la otra no. En esos momentos, decimos que la base de datos es inconsistente. Una base de datos en un estado inconsistente es capaz de proporcionar a sus usuarios información incorrecta o contradictoria.
  • Es posible brindar un manejo de transacciones.- Una transacción es una unidad de trabajo lógico, que por lo regular comprende varias operaciones de la base de datos. Si el usuario declara que las operaciones son parte de la misma transacción, entonces el sistema puede en efecto garantizar que se hagan todas o ninguna de ellas, aun cuando el sistema fallara a la mitad del proceso. La característica de atomicidad de las transacciones se aplica aun en el caso de un solo usuario.
  • Es posible mantener la integridad.- La integridad asegura que los datos de la base de datos estén correctos. Las restricciones de integridad son fundamentales y de crucial importancia.
  • Es posible hacer cumplir la seguridad.- Al asegurar que el único medio de acceso a la base de datos sea a través de canales adecuados se pueden definir las restricciones de seguridad que serán verificadas siempre que se intente acceder a datos sensibles.


Las bases de datos pueden clasificarse de varias maneras, de acuerdo al contexto que se esté manejando, la utilidad de las mismas o las necesidades que satisfagan.
Bases de datos estáticas
Son bases de datos de sólo lectura, utilizadas primordialmente para almacenar datos históricos que posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a través del tiempo, realizar proyecciones y tomar decisiones.
Bases de datos dinámicas
Éstas son bases de datos donde la información almacenada se modifica con el tiempo, permitiendo operaciones como actualización, borrado y adición de datos, además de las operaciones fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un sistema de información de un supermercado, una farmacia, un videoclub o una empresa.
Bases de datos bibliográficas
Sólo contienen un subrogante (representante) de la fuente primaria, que permite localizarla. Un registro típico de una base de datos bibliográfica contiene información sobre el autor, fecha de publicación, editorial, título, edición, de una determinada publicación, etc. Puede contener un resumen o extracto de la publicación original, pero nunca el texto completo, porque si no, estaríamos en presencia de una base de datos a texto completo (o de fuentes primarias —ver más abajo). Como su nombre lo indica, el contenido son cifras o números. Por ejemplo, una colección de resultados de análisis de laboratorio, entre otras.
Bases de datos de texto completo
Almacenan las fuentes primarias, como por ejemplo, todo el contenido de todas las ediciones de una colección de revistas científicas.
Directorios
Un ejemplo son las guías telefónicas en formato electrónico.
Bases de datos o "bibliotecas" de información química o biológica
Son bases de datos que almacenan diferentes tipos de información proveniente de la química, las ciencias de la vida o médicas. Se pueden considerar en varios subtipos:
§  Las que almacenan secuencias de nucleótidos o proteínas.
§  Las bases de datos de rutas metabólicas.
§  Bases de datos de estructura, comprende los registros de datos experimentales sobre estructuras 3D de biomoléculas
§  Bases de datos clínicas.
§  Bases de datos bibliográficas (biológicas, químicas, médicas y de otros campos): PubChem, Medline, EBSCOhost.
Modelos de bases de datos
Además de la clasificación por la función de las bases de datos, éstas también se pueden clasificar de acuerdo a su modelo de administración de datos.
Un modelo de datos es básicamente una "descripción" de algo conocido como contenedor de datos (algo en donde se guarda la información), así como de los métodos para almacenar y recuperar información de esos contenedores. Los modelos de datos no son cosas físicas: son abstracciones que permiten la implementación de un sistema eficiente de base de datos; por lo general se refieren a algoritmos, y conceptos matemáticos.
Algunos modelos con frecuencia utilizados en las bases de datos.
Bases de datos jerárquicas
Éstas son bases de datos que, como su nombre indica, almacenan su información en una estructura jerárquica. En este modelo los datos se organizan en una forma similar a un árbol (visto al revés), en donde un nodo padre de información puede tener varios hijos. El nodo que no tiene padres es llamado raíz, y a los nodos que no tienen hijos se los conoce como hojas.
Las bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones que manejan un gran volumen de información y datos muy compartidos permitiendo crear estructuras estables y de gran rendimiento.
Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos.
Base de datos de red
Éste es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es la modificación del concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida en el modelo jerárquico).
Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución eficiente al problema de redundancia de datos; pero, aun así, la dificultad que significa administrar la información en una base de datos de red ha significado que sea un modelo utilizado en su mayoría por programadores más que por usuarios finales.
Bases de datos transaccionales
Son bases de datos cuyo único fin es el envío y recepción de datos a grandes velocidades, estas bases son muy poco comunes y están dirigidas por lo general al entorno de análisis de calidad, datos de producción e industrial, es importante entender que su fin único es recolectar y recuperar los datos a la mayor velocidad posible, por lo tanto la redundancia y duplicación de información no es un problema como con las demás bases de datos, por lo general para poderlas aprovechar al máximo permiten algún tipo de conectividad a bases de datos relacionales.
Bases de datos relacionales
Éste es el modelo utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. Tras ser postulados sus fundamentos en 1970 por Edgar Frank Codd, de los laboratorios IBM en San José (California), no tardó en consolidarse como un nuevo paradigma en los modelos de base de datos. Su idea fundamental es el uso de "relaciones". Estas relaciones podrían considerarse en forma lógica como conjuntos de datos llamados "tuplas". Pese a que ésta es la teoría de las bases de datos relacionales creadas por Codd, la mayoría de las veces se conceptualiza de una manera más fácil de imaginar. Esto es pensando en cada relación como si fuese una tabla que está compuesta por registros (las filas de una tabla), que representarían las tuplas, y campos (las columnas de una tabla).
En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a diferencia de otros modelos como el jerárquico y el de red). Esto tiene la considerable ventaja de que es más fácil de entender y de utilizar para un usuario esporádico de la base de datos. La información puede ser recuperada o almacenada mediante "consultas" que ofrecen una amplia flexibilidad y poder para administrar la información.
El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estándar implementado por los principales motores o sistemas de gestión de bases de datos relacionales.
Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce como normalización de una base de datos.
Durante los años 80 la aparición de dBASE produjo una revolución en los lenguajes de programación y sistemas de administración de datos. Aunque nunca debe olvidarse que dBase no utilizaba SQL como lenguaje base para su gestión. 
Bases de datos multidimensionales
Son bases de datos ideadas para desarrollar aplicaciones muy concretas, como creación de Cubos OLAP. Básicamente no se diferencian demasiado de las bases de datos relacionales (una tabla en una base de datos relacional podría serlo también en una base de datos multidimensional), la diferencia está más bien a nivel conceptual; en las bases de datos multidimensionales los campos o atributos de una tabla pueden ser de dos tipos, o bien representan dimensiones de la tabla, o bien representan métricas que se desean estudiar.
Bases de datos orientadas a objetos
Este modelo, bastante reciente, y propio de los modelos informáticos orientados a objetos, trata de almacenar en la base de datos los objetos completos (estado y comportamiento).
Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos importantes del paradigma de objetos:
§  Encapsulación - Propiedad que permite ocultar la información al resto de los objetos, impidiendo así accesos incorrectos o conflictos.
§  Herencia - Propiedad a través de la cual los objetos heredan comportamiento dentro de una jerarquía de clases.
§  Polimorfismo - Propiedad de una operación mediante la cual puede ser aplicada a distintos tipos de objetos.
En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte de la definición de la base de datos. Una operación (llamada función) se especifica en dos partes. La interfaz (o signatura) de una operación incluye el nombre de la operación y los tipos de datos de sus argumentos (o parámetros). La implementación (o método) de la operación se especifica separadamente y puede modificarse sin afectar la interfaz. Los programas de aplicación de los usuarios pueden operar sobre los datos invocando a dichas operaciones a través de sus nombres y argumentos, sea cual sea la forma en la que se han implementado. Esto podría denominarse independencia entre programas y operaciones.
SQL:2003, es el estándar de SQL92 ampliado, soporta los conceptos orientados a objetos y mantiene la compatibilidad con SQL92.
Bases de datos documentales
Permiten la indexación a texto completo, y en líneas generales realizar búsquedas más potentes. Tesaurus es un sistema de índices optimizado para este tipo de bases de datos.
Bases de datos deductivas
Un sistema de base de datos deductiva, es un sistema de base de datos pero con la diferencia de que permite hacer deducciones a través de inferencias. Se basa principalmente en reglas y hechos que son almacenados en la base de datos. Las bases de datos deductivas son también llamadas bases de datos lógicas, a raíz de que se basa en lógica matemática. Este tipo de base de datos surge debido a las limitaciones de la Base de Datos Relacional de responder a consultas recursivas y de deducir relaciones indirectas de los datos almacenados en la base de datos.