2. Introducción
En este libro podrán ver lo que es una base de datos
tipos de base de datos, como funciona y todos los
conceptos sobre base de datos y muchas cosas más.
Las bases de datos se ingeniarongracias a la
necesidad de las grandes empresas de almacenar
ingentes cantidades de informaciónde una forma
rápida, sencillay fiable,y que a su vez pudieran
acceder a ella en cualquier momento sin necesidad de
desplazarse a salas dedicadas a archivar
documentación, como hasta hace poco se venía
haciendo.
En la base de datos podemos guardar muchos
registros sobre clientes,citas datos personales etc.
Cuando comenzó el despegue de los programas
informáticos se empezarona almacenar datos en los
archivos de los programas,lo cual era más cómodo,
pero aun así tenían grandes dificultades a la hora de
querer modificar registros,estructuras o simplemente
buscar información.
A finales de los años sesenta nacen las bases de datos.
En estas bases de datos se guardan los datos
utilizados por los usuarios,empresas,etc. Y los
programas que los utilizan no se tienen que
3. preocupar de su mantenimiento ni almacenaje por lo
que un cambio en la base de datos no tiene por qué
afectar en principio a los programas que la utilizan.
Que es una base de datos
Una base de datos es una colecciónde información
organizada de tal modo que sea fácilmente accesible,
gestionada y actualizada. En una sola vista, las bases
de datos pueden ser clasificadas de acuerdo con los
tipos de contenido: bibliográfico,de puro texto,
numéricas y de imágenes.
En informática,las bases de datos a veces se clasifican
de acuerdo a su enfoque organizativo.El enfoque más
frecuente es la base de datos relacional,una base de
datos tabular en la que los datos se definen de
4. manera que puede ser reorganizaday se accede en un
número de maneras diferentes.Una base de datos
distribuida es una que puede ser dispersada o
replicada entre diferentes puntos de una red. Una
base de datos de la programaciónorientadaa objetos
es una que es congruente con los datos definidos en
clases y subclases de los objetos.
Las bases de datos informáticas típicamente
contienen agregados de registrosde datos o archivos,
tales como las operaciones de venta, catálogos de
productos e inventarios y perfiles de clientes.
Típicamente, un gestor de bases de datos proporciona
a los usuarios la capacidad de controlar el acceso de
lectura/escritura,especificando la generaciónde
informes y analizando el uso. Las bases de datos y los
administradores de bases de datos son frecuentes en
grandes sistemas mainframe,pero también están
presentes en estaciones de trabajo distribuidas y más
pequeñas, y en sistemas de gama media, como el
AS/400 y en los equipos de cómputo personales.
5. Tipos de base de datos
La definición teórica de una base de datos es bastante
poco agraciada: una base de datos es todo conjunto de
datos pertenecientes a un mismo contexto que se
almacenan sistemáticamentepara su posterioruso.
Aunque esta definición teórica sea rigurosa no se
circunscribe únicamente a la rama de las nuevas
tecnologías que se encarga de estudiar la mejor forma
de almacenar y acceder a la información almacenada.
Es común que muchas pequeñas y medianas empresas
consideren que los sistemas de bases de datos son
excesivamente complicados y caros para sus
necesidades reales por lo que acaban utilizando
diferentes plataformas para gestionar su información
de una forma, que si bien parece ser fácil y sencilla en
los inicios posteriormente se descubre que complica la
gestión de estos datos.
Modelos de bases de datos
Existen diferentes maneras de ordenar y organizar la
información para que este sea accesible para nosotros.
No existe el sistema de ase de datos perfecto: hay que
elegir aquella estructura que mejor se adapte a
6. nuestras necesidades. Los siguientes son los tipos más
comunes:
Las bases de datos jerárquicas construyen una
estructura de jerarquía con los datos que permite
una estructuración muy estable cuando
gestionamos una gran cantidad de datos muy
interrelacionados.
Las bases de datos en red derivan de las jerárquicas
pero mejoran la gestión de datos redundantes
manteniendo su rendimiento en consultas de
datos.
Las bases de datos transaccionalesestándiseñadas
para el envío y recepción de datos a grandes
velocidades y de forma continua. Su único fin es la
recepción y envío de información, pero la gestión
de almacenamiento o redundancia están fuera de
su propósito.
Las bases de datos relacionales son las más
utilizadas en aplicaciones reales. La información se
almacena siemprehaciendo referencia a otra por lo
que se facilita la gestión y su uso por personal no
especialista. En este modelo el lugar y la forma
donde se guarde la información es secundario.
Las bases de datos orientadas a objetos han
surgido como concepto tras la aparición de los
sistemas de programación orientada a objetos.
7. Las bases de datos documentales están
especializadas en el almacenamiento de textos
completos, por lo que facilitan el tratamiento
informatizado de grandes cadenas de caracteres.
8. El modelo de base de datos jerárquica
El modelo jerárquico de bases de datos se asemeja a la
estructurade un árbol, tal como Microsoft Windows
organiza las carpetas y archivos. En un modelo
jerárquico de bases de datos, cada enlace es anidado con
el fin de conservar los datos organizados en un orden
particularen un mismo nivel de lista. Por ejemplo, una
base de datos jerárquico de las ventas, puede incluir las
ventas de cada día como un archivo separado. Anidadas
dentro de este archivo están todas las ventas (el mismo
tipo de datos) para el día.
9. Modelo de la Red
En un modelo de red, la característica definitoria es que
se almacena un registro con un enlace a otros registros -
en efecto, una red. Estas redes (o, a veces, a que se
refiere como punteros)puedeser una variedad de
diferentes tipos de información como números de nodo
de un disco o incluso la dirección.
El Modelo Relacional
El modelo relacional es el más populartipo de base de
datos y una herramienta extremadamente potente,no
sólo para almacenar información, también para acceder
a ella. Las bases de datos relacionalesson organizadas
en forma de tablas. La belleza de un cuadro es que la
información se puedeacceder o añadir sin reorganizar
las tablas. Una tabla puedetener muchos registros y
cada registro puedetener muchos campos.
Cuadros que a veces se llaman una relación. Por
ejemplo, una empresa puedetener una base de datos
denominadalos pedidos de los clientes, dentro de esta
base de datos serán diferentes tablas o relacionesde
todoslos relativos a los pedidos de los clientes.
10. Tablas pueden incluir la información del cliente
(nombre, dirección, contacto,información, número de
cliente, etc.) y otras tablas (relaciones), como las
órdenes que el cliente compró anteriormente(esto
puedeincluir un número de artículo, la descripción del
artículo, cantidad de pago, la forma de pago, etc.). Cabe
señalar que cada registro (grupo de campos) en una
base de datos relacional tiene su propiaclave principal.
Una clave principal es el único campo quelpo.
11. Evolución de base de dato
Década de 1950
En este lapso de tiempo se da origen a las cintas
magnéticas, las cuales sirvieron para suplir las
necesidades de información de las nuevas
industrias. Por medio de este mecanismo se
empezó a automatizar la información de las
nóminas, como por ejemplo el aumento de salario.
Consistía en leer una cinta o más y pasar los
datos a otra, y también se podían pasar desde las
tarjetas perforadas. Simulando un sistema de
Backup, que consiste en hacer una copia de
seguridad o copia de respaldo, para guardar en un
medio extraíble la información importante. La
nueva cinta a la que se transfiere la información
pasa a ser una cinta maestra. Estas cintas solo se
podían leer secuencial y ordenadamente.
Década de 1960
El uso de los discos en ese momento fue un
adelanto muy efectivo, ya que por medio de este
soporte se podía consultar la información
directamente, esto ayudo a ahorrar tiempo. No era
necesario saber exactamente donde estaban los
datos en los discos, ya que en milisegundos era
recuperable la información.
12. A diferencia de las cintas magnéticas, ya no era
necesaria la secuencialidad, y este tipo de soporte
empieza a ser ambiguo.
Los discos dieron inicio a las Bases de Datos, de
red y jerárquicas, pues los programadores con su
habilidad de manipulación de estructuras junto con
las ventajas de los discos era posible guardar
estructuras de datos como listas y árboles.
Década de 1970
Edgar Frank Codd (23 de agosto de 1923 – 18 de
abril de 2003), en un artículo "Un modelo
relacional de datos para grandes bancos de datos
compartidos" ("A Relational Model of Data for
Large Shared Data Banks") en 1970, definió el
modelo relacional y publicó una serie de reglas
para la evaluación de administradores de sistemas
de datos relacionales y así nacieron las bases de
datos relacionales.
A partir de los aportes de Codd el multimillonario
Larry Ellison desarrollo la base de datos Oracle, el
cual es un sistema de administración de base de
datos, que se destaca por sus transacciones,
estabilidad, escalabilidad y multiplataforma.
Inicialmente no se uso el modelo relacional debido
a que tenía inconvenientes por el rendimiento.
13. ya que no podían ser competitivas con las bases
de datos jerárquicas y de red.
Ésta tendencia cambio por un proyecto de IBM el
cual desarrolló técnicas para la construcción de un
sistema de bases de datos relacionales eficientes,
llamado System R.
Edgar Frank Codd IBM Corporation Larry
Ellison
Década de 1980
Las bases de datos relacionales con su sistema
de tablas, filas y columnas, pudieron competir con
las bases de datos jerárquicas y de red, ya que su
nivel de programación era bajo y su uso muy
sencillo.
En esta década el modelo relacional ha
conseguido posicionarse del mercado de las
bases de datos. Y también en este tiempo se
iniciaron grandes investigaciones paralelas y
distribuidas, como las bases de datos orientadas a
objetos.
14. Principios década de los 90
Para la toma de decisiones se crea el lenguaje
SQL, que es un lenguaje programado para
consultas. El programa de alto nivel SQL es un
lenguaje de consulta estructuradoque analiza
grandes cantidades de información el cual permite
especificar diversos tipos de operaciones frente a
la misma información, a diferencia de las bases de
datos de los 80 que eran diseñadas para las
aplicaciones de procesamiento de transacciones.
Los grandes distribuidores de bases de datos
incursionaron con la venta de bases de datos
orientada a objetos.
Finales de la década de los 90
El boom de esta década fue la aparición de la
WWW “Word Wide Web‿ya que por éste medio
se facilitaba la consulta de las bases de datos.
Actualmente tienen una amplia capacidad de
almacenamiento de información, también una de
las ventajas es el servicio de siete días a la
semana las veinticuatro horas del día, sin
interrupciones a menos que haya planificaciones
de mantenimiento de las plataformas o el
software.
15. Siglo XXI
En la actualidad existe gran cantidad de
alternativas en línea que permiten hacer
búsquedas orientadas a necesidades especificas
de los usuarios, una de las tendencias más
amplias son las bases de datos que cumplan con
el protocolo Open Archives Initiative – Protocol for
Metadata Harvesting (OAI-PMH) los cuales
permiten el almacenamiento de gran cantidad de
artículos que permiten una mayor visibilidad y
acceso en el ámbito científico y general.
16. Formularios y componentes
Formularios
Es una pieza de papel que contiene datos
y espacios en blanco para registrar
información variable, el cual tendrá
diferente utilización según el área
funcional a la cual pertenezca. Puede
considerarse también como un
instrumento de trabajo cuyo objetivo es
trasportar información para simplificar y
facilitar el desarrollo de los
procedimientos administrativos. En ellos
se imprime información constante y que
tiene una serie de espacios para asentar
información variable. Es todo papel que
contenga información, texto, epígrafes,
impresos o en blanco para rellenarlos
posteriormente.
17. Gestión de base de datos
Una base de dato puede mantenerse
manualmente o ser informatizada (esta
última es la que nos interesa) la base de
datos informatizada es creada y
mantenida por un conjunto de
aplicaciones diseñada para esa tareas
específicas o bien, se pueden gestionar
empleando SGBD.
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.
18. También son ampliamente utilizadas en
entornos científicos con el objeto de
almacenar la información experimental.
Se le pueden llamar formulario a un
documento donde hay un conjunto de
objetos y procedimientos que se utilizan
como diseño de presentación al usuario.
Partes del formulario
Extremo superior o cabeza:
Se utiliza para los datos iniciales del
formulario, como identificación del
organismo, título o denominación de la
forma y otros. Representa la introducción
respecto a la acción que se va a
desarrollar en el cuerpo del formulario.
Cuerpo del formulario:
Contiene el mayor grupo de datos del
formulario, que son los que generan la
acción implícita los cuales se determinan,
de acuerdo con la información que se
19. desea obtener, mediante la utilización de
la forma.
Se analizan las decisiones acerca de los
datos y la distribución siguiendo una
secuencia lógica de colocación.
Extremo inferior o pie:
Contiene los datos de cierre o conclusión
del formulario, firmas y sellos para
aprobar o conformar la información
registrada en el cuerpo del mismo, y
también se asienta el código de registro.
20. LOS COMPONENTES
Los componentes de una base de datos de
Access son:
– Tablas
– Consultas
– Formularios
– Informes
Tablas
Cuando se crea una base de datos, los datos se
almacenan en tablas. Cada tabla representa a
una entidad de la base de datos (alumno, libro,
producto, …).
Una tabla es similar en apariencia a una hoja
de cálculo, en cuanto a que los datos se
almacenan en filas y columnas. Cada fila de
una tabla se denomina registro. En los
registros es donde se almacena cada
información individual. Cada registro consta
de campos (al menos uno).
21. Los campos corresponden a las columnas de la
tabla (nombre, dirección, titulo, …)
Antes de crear tablas, debes examinar
cuidadosamente tus requisitos y diseñar la
base de datos para determinar las tablas que
necesitas.
Cada registro tiene que estar unívocamente
definido, tiene que ser único, no puede haber
registros duplicados. Para ello, definiremos
uno de los campos como clave. Es decir, la
clave define de manera única al registro (DNI,
matricula, código, Id articulo.
Consultas
Las consultas son las que verdaderamente
hacen el trabajo en una base de datos. Pueden
realizar numerosas funciones diferentes. Su
función más común es recuperar datos
específicos de las tablas. Los datos que deseas
ver suelen estar distribuidos por varias tablas
y, gracias a las consultas, puedes verlos en una
sola hoja de datos.
22. Además, puesto que normalmente no deseas
ver todos los registros a la vez, las consultas le
permiten agregar criterios para “filtrar” los
datos hasta obtener solo los registros que
desee (libros que se han prestados y que tienen
que estar devueltos antes del 12/05/2015,
alumnos que han nacido en el año 2000.
Formularios
Los formularios se conocen a veces como
“pantallas de entrada de datos”. Son las
interfaces que se utilizan para trabajar con los
datos y, a menudo, contienen botones de
comando que ejecutan diversos comandos. Se
puede crear una base de datos sin usar
formularios, editando los datos de las hojas de
las tablas. No obstante, casi todos los usuarios
de bases de datos prefieren usar formularios
para ver, escribir y editar datos en las tablas.
23. Los formularios proporcionan un formato fácil
de utilizar para trabajar con los datos.
La introducción de los datos directamente
sobre las tablas es bastante incómoda.
Los formularios permiten la introducción de
datos en las tablas de una forma más sencilla y
más limpia. En vez de introducir los datos
directamente sobre la tabla, los datos se
introducen en la tabla a través de los
formularios.
Informes
Los informes sirven para resumir y presentar
los datos de las tablas. Normalmente, un
informe responde a una pregunta específica.
Un informe se puede ejecutar en cualquier
momento y siempre reflejará los datos
actualizados de la base de datos. Los informes
suelen tener un formato que permita
imprimirlos, pero también se pueden consultar
en la pantalla, exportar a otro programa o
enviar por correo electrónico.
24. Macros y Módulos
Las macros en Access se pueden considerar
como un lenguaje de programación
simplificado, que se puede utilizar para
aumentar la funcionalidad de la base de datos.
Las macros contienen acciones que realizan
tareas, como abrir un informe, ejecutar una
consulta o cerrar la base de datos. Casi todas
las operaciones de bases de datos que
normalmente se realizan manualmente se
pueden automatizar mediante macros,
ahorrando así mucho tiempo.
Los módulos, como las macros, son objetos
que sirven para aumentar la funcionalidad de
la base de datos. Los módulos se escriben en
el lenguaje de programación de Visual Basic
para Aplicaciones.
25. Tabla, registro y campos
Tablas
Las tablas son objetos de base de datos que
contienen todos sus datos. En las tablas, los datos
se organizan con arreglo a un formato de filas y
columnas, similar al de una hoja de cálculo. Cada
fila representa un registro único y cada columna
un campo dentro del registro. Por ejemplo, en una
tabla que contiene los datos de los empleados de
una compañía puede haber una fila para cada
empleado y distintas columnas en las que figuren
detalles de los mismos, como el número de
empleado, el nombre, la dirección, el puesto que
ocupa y su número de teléfono particular.
El número de tablas de una base de datos se
limita solo por el número de objetos admitidos
en una base (2.147.483.647). Una tabla
definida por el usuario estándar puede tener
hasta 1.024 columnas. El número de filas de la
tabla solo está limitado por la capacidad de
almacenamiento del servidor.
Puede asignar propiedades a la tabla y a cada
columna de la tabla para controlar los datos
26. admitidos y otras propiedades. Por ejemplo,
puede crear restricciones en una columna para
no permitir valores nulos o para proporcionar
un valor predeterminado si no se especifica un
valor, o puede asignar una restricción de clave
en la tabla que exige la unicidad o definir una
relación entre las tablas.
Los datos de la tabla se pueden comprimir por
filas o por página. La compresión de datos
puede permitir que se almacenen más filas en
una página. Para más información, consulte
Data Compresión
.
Tipos de tablas
Además del rol estándar de las tablas básicas
definidas por el usuario, SQL Server proporciona
los siguientes tipos de tabla que permiten llevar a
cabo objetivos especiales en una base de datos:
Tablas con particiones
Las tablas con particiones son tablas cuyos datos
se han dividido horizontalmente entre unidades
que pueden repartirse por más de un grupo de
archivos de una base de datos. Las particiones
facilitan la administración de índices y tablas
grandes al permitir el acceso y la administración de
subconjuntos de datos rápidamente y con eficacia,
mientras se mantiene la integridad de la colección
global. De forma predeterminada, SQL Server 2014
admite hasta 15.000 particiones. Para obtener más
información, vea Particionad Tables and Indexes.
Tablas temporales
Tablas temporales se almacenan en tempdb. Hay
dos tipos de tablas temporales: locales y globales.
Se diferencian entre sí por los nombres, la
visibilidad y la disponibilidad. Las tablas
temporales locales tienen como primer carácter de
sus nombres un solo signo de número (#); solo son
visibles para el usuario de la conexión actual y se
eliminan cuando el usuario se desconecta de la
instancia de SQL Server. Las tablas temporales
globales presentan dos signos de número (##)
antes del nombre; son visibles para cualquier
usuario después de su creación y se eliminan
cuando todos los usuarios que hacen referencia a
la tabla se desconectan de la instancia de SQL
Server.
27. Tablas del sistema
SQL Server almacena los datos que definen la
configuración del servidor y de todas sus tablas en
un conjunto de tablas especial, conocido como
tablas del sistema. Los usuarios no pueden
consultar o actualizar directamente las tablas del
sistema. La información de las tablas del sistema
está disponible a través de las vistas del sistema.
Para obtener más información, vea Vistas del
sistema (Transact-SQL).
Tablas anchas
Las tablas anchas usan las columnas dispersas para
aumentar hasta 30 000 el número total de
columnas permitidas.
Las columnas dispersas son columnas normales
que disponen de un almacenamiento optimizado
para los valores NULL. Este tipo de columnas
reducen los requisitos de espacio de los valores
NULL a costa de una mayor sobrecarga a la hora
de recuperar valores no NULL. Una tabla ancha ha
definido un conjunto de columnas, que es una
representación XML sin tipo que combina todas las
columnas dispersas de una tabla en una salida
estructurada. El número de índices y estadísticas
también se aumenta hasta 1.000 y 30.000,
respectivamente. El tamaño máximo de una fila de
una tabla ancha es de 8.019 bytes. Por
consiguiente, la mayoría de los datos de cualquier
fila deben ser NULL. El número máximo de
columnas no dispersas más las columnas
calculadas de una tabla ancha sigue siendo 1.024.
Las tablas anchas tienen las siguientes
implicaciones de rendimiento.
Las tablas anchas pueden aumentar el costo
de mantenimiento de los índices de la tabla. Se
recomienda que el número de índices de una
tabla ancha se limite a los índices necesarios
para la lógica de negocios. Si el número de
índices aumenta, también lo harán el tiempo
de compilación de DML y los requisitos de
memoria. Los índices no clúster deben ser
índices filtrados que se aplican a subconjuntos
de datos. Para obtener más información,
consulte Create Filtered Indexes.
Las aplicaciones pueden agregar y quitar
columnas de las tablas anchas de forma
28. dinámica. Cuando se agregan o se quitan
columnas, también se invalidan los planes de
consulta compilados. Se recomienda diseñar
una aplicación que se corresponda con la
carga de trabajo prevista para minimizar los
cambios de esquema.
Cuando se agregan y se quitan datos de una
tabla ancha, el rendimiento puede verse
afectado. El diseño de las aplicaciones debe
corresponderse con la carga de trabajo
prevista para minimizar los cambios llevados a
cabo en los datos de la tabla.
Limite la ejecución de instrucciones DML en
una tabla ancha destinadas a actualizar varias
filas de una clave de agrupación en clústeres.
La compilación y la ejecución de estas
instrucciones pueden requerir recursos de
memoria considerables.
Las operaciones de cambio de partición en las
tablas anchas pueden resultar lentas, y su
procesamiento podría requerir grandes
cantidades de memoria. Los requisitos de
rendimiento y de memoria son proporcionales
al número total de columnas existentes en las
particiones de origen y de destino.
Los cursores de actualización que actualizan
columnas concretas de una tabla ancha deben
enumerar las columnas de manera explícita en
la cláusula FOR UPDATE. Esto ayudará a
optimizar el rendimiento mientras se usan
cursores.
29. Registro
Registrar es la acción que se refiere a almacenar
algo o a dejar constancia de ello en algúntipo de
documento.Un dato, por su parte, es una
información que posibilitael acceso a un
conocimiento.
La noción de registro de datos, por lo tanto, está
vinculada a consignardeterminadas
informaciones en un soporte. El registro de
datos puede desarrollarse tanto en un papel
como en formato digital.Por ejemplo: “Apenas
llegué a la oficina, un empleadoadministrativo
me pidió mis documentosy procedió al registro de
datos en una planilla”, “Gracias a esta nueva
herramienta tecnológica que acabamos de
incorporar, el registro de datos será mucho más
veloz”, “Tenemos problemascon el registro de
datos ya que el sistema no está funcionando bien:
le pido disculpas por las molestias”.
La policía de todo el mundo encuentra
precisamente en los registros de datos una de sus
herramientas más útiles y eficaces de trabajo. Y es
que los mismos le permiten tener acceso inmediato
a la identidad de personas sobre las que desee
conocer algún tipo de informaciónconcreto.
30. Exactamentelas autoridades cuentancon
registros dondetienen almacenados numerosos
aspectos de la ciudadanía tales nombres y
apellidos,domicilio,edad, sexo,estado civil,
nombre de los padres, fecha y lugar de nacimiento,
fotografías,huellas digitales,trabajo… Todo eso y
mucho más sin olvidartampoco las infracciones
que haya podido cometer e incluso la ficha policial,
en el caso de que la poseanpor haber realizado
algúndelito.
En el ámbito de la informática, se conoce
como registro de datos al bloque con
información que forma parte de una tabla.
Esto quiere decir que, en una base de datos,
el registro de datos es una fila.
Esta fila o registro supone un conjunto de
datos que mantienen una cierta vinculación
entre sí. La totalidadde las filas de una
tabla respeta una estructura idéntica, una
característica que permite trabajar y hacer
cálculos con la información. La tabla, en
definitiva,constituyela base de datos.
31. Para poder llevar a cabo el citado registro, se hace
necesario recurrir al uso de la tecnología que existe
y que facilita no sólo el llevarlo al día y poder
consultarlocuando sea imprescindiblesino
también poder ir rellenando nuevas filas y
columnas.Existendiversos programas específicos
para ello, no obstante, uno de los más utilizadosen
todo el mundo es Microsoft Excel.
Se conoce como registro de datos biométricos,
por otra parte, a la recopilaciónde información
vinculada a la biometría de una persona. Se
trata de datos que contribuyen a la
identificación del sujeto en cuestión: una
huella digital, una fotografía,etc.
Además de todo lo expuesto,no podemos
olvidarnosque en España existe lo que se conoce
como Registro General de Protección de Datos,
que dependede lo que es la Agencia Española de
Protección de Datos. Su funciónno es otra que
velar por la publicidad de los ficheros y del
tratamiento que se le dan a los datos personales
que existen en aquella.
32. Campo
Podemos agregarmuchos tipos de campos que
formarán parte de nuestrabasede datos. Cada
campo admite distintos tipos de datos, con
diferentes interfaces. Después de crear los campos
deseadospodemos añadirinformaciónen la base
de datos.
Un campo es el nombre de la unidad de
información.Cada entrada en una base de datos
puede tener múltiples campos de diversos tipos.
Por ejemplo, un campo de texto llamado'color
favorito',que permite escribirlo, o un menú
llamado'población' que permita escogerde un
listado de poblaciones posibles. La combinaciónde
campos diversos nos permitirá recabar toda la
información que consideremos relevantesobre los
ítems que constituyen la base de datos.
33. CONTENIDO
[ocultar]
1 Nombrey descripcióndel campo
2 Tipos de campos
2.1 Caja de selección
2.2 Fecha
2.3 Archivo
2.4 Menú
2.5 Menú (selecciónmúltiple)
2.6 Número
2.7 Dibujo
2.8 Botones de radio
2.9 Texto
2.10 Área de texto
2.11 URL
Nombre y descripción del campo
Todos los campos necesitan un nombrey una
descripción cuando se crean.
34. Tipos de campos
Caja de selección
Permite crear una o más cajas de selección. Cada
línea escrita en las 'opciones' aparecerá como una
caja de selección diferente en la ventana de edición
de la entrada. Al editar la entrada podremos
seleccionaruna o más de las opciones y al
visualizarla entrada aparecerá en el campo
correspondienteel texto de la o las opción/es
seleccionada/s(en el caso de que se haya
seleccionadomás de una opción aparecerán la una
bajo la otra, no en la misma línea). Los Botones de
radio se pueden utilizar si se desea que el usuario,
al editar la entrada, seleccionetan sólo una de las
opciones.
Las cajas de selección múltiplese pueden utilizar,
por ejemplo, en una base de datos de películas,que
pueden ser de horror, comedia,del oeste, etc. En
este caso se podrían seleccionarcombinacionesde
géneros, por ejemplo horror-comedia o comedia-
del oeste.
El campo Menú (selecciónmúltiple) también
permite una selección de opciones, pero en este
caso clicando en un menú (lo cual a menudo no
resulta tan obvio como seleccionaruna opción).
35. Fecha
Permite que los usuarios entren una fecha
seleccionandoen un listado desplegableel día, mes
y año correspondientes.
Archivo
Permite que los usuarios subanun fichero desdesu
ordenador.Si se trata de un fichero de imagen
sería mejor opción seleccionarel campo dibujo.
Menú
Es parecido a la caja de selección pero el texto
escrito en el área opcionesse presentará como un
listado desplegablea la hora de editar la entrada.
Cada línea de las opciones será una opción del
desplegable.
Menú (selección múltiple)
Parecido al caso anterior pero permite que el
usuario seleccionemás de una opción al editar la
entrada manteniendo apretadas las teclas de
control o mayúsculas mientras clica con el ratón.
Resulta un poco más complejo de utilizar que la
caja de selección, que también permite selecciones
múltiples.
36. Número
Pide a los usuarios que escriban un número. El
número debe ser entero, aunquepuede ser
negativo (por ejemplo: -2,-1,0,1,2,3,...). Si se
escriben caracteres no numéricos éstos y los que le
siguenno apareceráno, si no hay ningún número,
el resultado será el cero. Por ejemplo: "3.14" se
transformaráen "3"; "1,000,000"en "1"; y "seis"
aparecerá como "0".
Dibujo
Permite al usuario subir un fichero de imagen
desdesu ordenador.
Botones de radio
Permite al usuario escogeruna de diversas
opciones. Además,tan sólo podrá guardarla
entrada cuando haya realizado la selección. Si sólo
hay dos opciones opuestas (por ejemplo,
verdadero/falso,sí/no),se puede utilizaruna caja
de selección múltiple, aunquede esta manera se
podrán guardarentradas,aunqueel usuario no
haya seleccionadoninguna de las opciones.
Texto
Los usuarios puedenescribir hasta 60 caracteres
de texto. El campo área de texto se puede utilizar
37. para textos más largos o que requieranalgún tipo
de formato.
Área de texto
Permite a los usuariosescribir un texto largo y
añadirleformato de manera similara cuando se
escribe un mensajea un foro. Puede especificar el
ancho en columnasy el alto en filas del área que se
presentará a los usuarios.
URL
Pide al usuario que escriba una URL. Si se
selecciona la opción auto enlazar la URL ésta
aparecerá como un hipervínculo.Si además se
escribe algo en nombre forzado para el enlace éste
será el texto utilizado para el hipervínculo.Por
ejemplo: en una base de datos sobre autores puede
resultarinteresante incorporar la página web del
autor. Si se escribe 'página web' como nombre
forzado,al clicar en el texto página web de la
entrada podremos acceder a la URL que hayamos
escrito.
38. Tipos de tabla en MySQL
1.ISAM. - es el formato de almacenaje
más antiguo, y posiblemente pronto
desaparecerá. Presentaba limitaciones
(los ficheros no eran transportables
entre máquinas con distinta
arquitectura, no podía manejar ficheros
de tablas superiores a 4 gigas). Si aun
tienes tablas tipo ISAM, cambialas a
MYISAM.
2.MYISAM. - es el tipo de tabla por defecto
en MySQL desde la versión 3.23.
Optimizada para sistemas operativos de
64 bits, permite ficheros de mayor
tamaño que ISAM. Además, los datos se
almacenan en un formato independiente,
con lo que se pueden copiar tablas de
una máquina a otra de distinta
plataforma. Posibilidad de indexar
campos BLOB y TEXT.
39. 3.HEAP. - Crea tablas en memoria. Son
temporales y desaparecen cuando el
servidor se cierra; a diferencia de una
tabla TEMPORARY, que solo puede ser
accedida por el usuario que la crea, una
tabla HEAP puede ser utilizada por
diversos usuarios.
4.BDB. - Base de datos Berkeley. TST.
Solo en MySQL MAX
5.INNODB. - TST, ACID, con posibilidad de
commit, rollback, recuperación de
errores y bloqueo a nivel de fila.
6.MERGE más que un tipo de tabla es la
posibilidad de dividir tablas MYISAM de
gran tamaño (solo útil si son
verdaderamente de GRAN tamaño) y
hacer consultas sobre todas ellas con
mayor rapidez. Las tablas deben ser
myisam e idénticas en su estructura.
MySQL nos permite variar el tipo de tabla
después de que esta fue creada.
TST se refiere a ‘Transactions safe tables’, o
tablas para transacciones seguras. A este
tipo pertenecen DBD y INNODB.
40. Las tablas tipo TST son menos rápidas y
ocupan más memoria, pero a cambio
ofrecen mayor seguridad frente a fallos
durante la consulta.
Las tablas TST están disponibles desde la
versión 4.0 de MySQL
Las tablas TST permiten ir introduciendo
consultas y finalizar con un COMMIT (que
las ejecuta) o ROLLBACK (que ignora los
cambios)
En bases de datos se denomina ACID a un
conjunto de características necesarias para
que una serie de instrucciones puedan ser
consideradas como una transacción. Así
pues, si un sistema de gestión de bases de
datos es ACID compliant quiere decir que el
mismo cuenta con las funcionalidades
necesarias para que sus transacciones
tengan las características ACID.
En concreto ACID es un acrónimo de
Atomicity, Consistency, Isolation and
Durability: Atomicidad, Consistencia,
Aislamiento y Durabilidad en español.
41. Historia y Evolución de MySQL, server y
postrer
Orígenes
El origen de MySQL se remonta a la
década de los ochenta. Michael Widenius,
también conocido como Monti, un joven
programador que realizaba complejas
aplicaciones en lenguaje BASIC, al no
encontrar un sistema de almacenamiento de
archivos que le resultara satisfactorio,
pensó en construir el suyo propio. Años
después, en 1995, y en colaboración con
David Axmark, Widenius desarrolló un
producto que básicamente era el resultado
de sus investigaciones, más dos
aportaciones nuevas: el uso del lenguaje
SQL y la accesibilidad a través de Internet.
Así nació MySQL y también la empresa
MySQL AB.
42. Fig. 8.1. Michael Widenius
Evolución
La evolución de MySQL se produce con las
sugerencias de los usuarios, canalizadas por la
empresa MySQL AB, que contrata a
programadores de todo el mundo para que, a
través de Internet, vayan ampliando y
mejorando el producto. Las versiones, como
es costumbre en este tipo de software libre, se
van colgando en Internet para que los usuarios
puedan disponer de ellas.
Sin embargo, también como es habitual, hay
que distinguir entre versiones de prueba o beta
y versiones estables o de producción. Las
versiones de prueba o beta están a
disposición de los usuarios para ser testadas en
busca de posibles mejoras. Por su parte, las
versiones estables o de producción son las
43. que ya están preparadas para ser utilizadas a
pleno rendimiento.
En la actualidad, 4.1. 14 es la última versión
estable. Esta versión dispone de características
como gestión de transacciones, integridad
referencial (bajo ciertas condiciones), uso de
índices, incorporación de librerías, etcétera. La
versión de prueba actualmente disponible es la
5.0, que empieza a incorporar elementos hasta
ahora no incluidos en MySQL, como el uso de
procedimientos, cursores, triggers o vistas.
Existe una versión incluso más reciente, la 5.1,
pero que aún es un proyecto. Esta versión
promete mejoras en la seguridad y en la
gestión de claves ajenas, aunque todavía no se
conoce cómo se plasmarán dichas
características en posteriores versiones
estables.
44. SQL SELVER
La historia de SQL (que se pronuncia
deletreando en inglés las letras que lo
componen, es decir "ese-su-ele" y no "piquel"
como se oye a menudo) empieza en 1974 con
la definición, por parte de Donald
Chamberlain y de otras personas que
trabajaban en los laboratorios de investigación
de IBM, de un lenguaje para la especificación
de las características de las bases de datos que
adoptaban el modelo relacional. Este lenguaje
se llamaba SEQUEL (Estructurad English
Quera Lenguaje) y se implementó en un
prototipo llamado SEQUEL-XRM entre 1974
y 1975. Las experimentaciones con ese
prototipo condujeron, entre 1976 y 1977, a una
revisión del lenguaje (SEQUEL/2), que a
partir de ese momento cambió de nombre por
motivos legales, convirtiéndose en SQL. El
prototipo (Sistema R), basado en este
45. lenguaje, se adoptó y utilizó internamente en
IBM y lo adoptaron algunos de sus clientes
elegidos.
Gracias al éxito de este sistema, que no estaba
todavía comercializado, también otras
compañías empezaron a desarrollar sus
productos relacionales basados en SQL. A
partir de 1981, IBM comenzó a entregar sus
productos relacionales y en 1983 empezó a
vender DB2. En el curso de los años ochenta,
numerosas compañías (por ejemplo, Oracle y
Súbase, sólo por citar algunos)
comercializaron productos basados en SQL,
que se convierte en el estándar industrial de
hecho por lo que respecta a las bases de datos
relacionales.
En 1986, el ANSI adoptó SQL
(sustancialmente adoptó el dialecto SQL de
IBM) como estándar para los lenguajes
relacionales y en 1987 se transformó en
estándar ISO. Esta versión del estándar va con
46. el nombre de SQL/86. En los años siguientes,
éste ha sufrido diversas revisiones que han
conducido primero a la versión SQL/89 y,
posteriormente, a la actual SQL/92.
El hecho de tener un estándar definido por un
lenguaje para bases de datos relacionales abre
potencialmente el camino a la
intercomunicabilidad entre todos los productos
que se basan en él. Desde el punto de vista
práctico, por desgracia las cosas fueron de otro
modo. Efectivamente, en general cada
productor adopta e implementa en la propia
base de datos sólo el corazón del lenguaje
SQL (el así llamado Entre leves o al máximo
el Intermédiate leve), extendiéndolo de
manera individual según la propia visión que
cada cual tenga del mundo de las bases de
datos.
Actualmente, está en marcha un proceso de
revisión del lenguaje por parte de los comités
47. ANSI e ISO, que debería terminar en la
definición de lo que en este momento se
conoce como SQL3. Las características
principales de esta nueva encarnación de SQL
deberían ser su transformación en un lenguaje
stand-alome (mientras ahora se usa como
lenguaje hospedado en otros lenguajes) y la
introducción de nuevos tipos de datos más
complejos que permitan, por ejemplo, el
tratamiento de datos multimedia les.
POSTGRE SQL
El Sistema Gestor de Bases de Datos
Relacionales Orientadas a Objetos conocido
como PostgreSQL (y brevemente llamado
Postgres95) está derivado del paquete Postgres
escrito en Berkeley. Con cerca de una década
de desarrollo tras él, PostgreSQL es el gestor
de bases de datos de código abierto más
avanzado hoy en día, ofreciendo control de
concurrencia multa-versión, soportando casi
toda la sintaxis SQL (incluyendo su consultas,
transacciones, y tipos y funciones definidas
48. por el usuario), contando también con un
amplio conjunto de enlaces con lenguajes de
programación (incluyendo C, C++, Java, Perl,
tal y Python).
El proyecto Postgres de Berkeley
La implementación del DBMS
Postgrescomenzó en 1986.
Los conceptos iniciales para el sistema fueron
presentados en Te Designa of Postores la
definición del modelo de datos inicial apareció
en Te Postgres Data Modelo. El diseño del
sistema de reglas fue descrito en ese momento
en Te Designó of te Postgres Rules Sistema.
La lógica y arquitectura del gestor de
almacenamiento fueron detalladas en Te
Postgres Storage Sistema.
Postgres ha pasado por varias revisiones
importantes desde entonces. El primer sistema
de pruebas fue operacional en 1987 y fue
mostrado en la Conferencia ACM-SIGMOD
de 1988. Lanzamos la Versión 1, descrita en
49. Te Implementación of Postgres, a unos pocos
usuarios externos en Junio de 1989. En
respuesta a una crítica del primer sistema de
reglas (A Comentar en te Postgres Rules
Sistema), éste fue rediseñado (En Rules,
Procederes, Coaching and Bies in Databas
Sistemas) y la Versión 2, que salió en Junio de
1990, lo incorporaba. La Versión 3 apareció
en 1991 y añadió una implementación para
múltiples gestores de almacenamiento, un
ejecutor de consultas mejorado y un sistema
de reescritura de reglas nuevo. En su mayor
parte, las siguientes versiones hasta el
lanzamiento de Postgres95 (ver más abajo) se
centraron en mejorar la portabilidad y la
fiabilidad.
Postgres forma parte de la implementación de
muchas aplicaciones de investigación y
producción. Entre ellas: un sistema de análisis
de datos financieros, un paquete de
monitorización de rendimiento de motores a
reacción, una base de datos de seguimiento de
asteroides y varios sistemas de información
50. geográfica. También se ha utilizado como una
herramienta educativa en varias universidades.
Finalmente, Ilustra Información Technologies
(posteriormente absorbida por Informes) tomó
el código y lo comercializó. Postgres llegó a
ser el principal gestor de datos para el
proyecto científico de computación Sequoia
2000 a finales de 1992.
El tamaño de la comunidad de usuarios
externos casi se duplicó durante 1993. Pronto
se hizo obvio que el mantenimiento del código
y las tareas de soporte estaban ocupando
tiempo que debía dedicarse a la investigación.
En un esfuerzo por reducir esta carga, el
proyecto terminó oficialmente con la Versión
4.2.
Postgres95
En 1994, Andrew Ya y Dolly añadieron un
intérprete de lenguaje SQL a Postgres.
Postgres95 fue publicado a continuación en la
Web para que encontrara su propio hueco en
el mundo como un descendiente de dominio
51. público y código abierto del código original
Postgres de Berkeley.
El código de Postgres95 fue adaptado a ANSI
C y su tamaño reducido en un 25%. Muchos
cambios internos mejoraron el rendimiento y
la facilidad de mantenimiento. Postgres95
v1.0.x se ejecutaba en torno a un 30-50% más
rápido en el Wisconsin Benchmarking
comparado composteos v4.2. Además de
corrección de errores, éstas fueron las
principales mejoras:
El lenguaje de consultas Postule fue
reemplazado con SQL (implementado en
el servidor). Las sus consultas no fueron
soportadas hasta PostgreSQL (ver más
abajo), pero podían ser emuladas en
Postgres95 con funciones SQL definidas
por el usuario. Las funciones agregadas
fueron re implementadas. También se
añadió una implementación de la cláusula
GROUP BY. La interfaz libpqpermaneció
disponible para programas escritos en C.
52. Además del programa de monitorización,
se incluyó un nuevo programa (psql) para
realizar consultas SQL interactivas usando
la librería GNU realinee.
Una nueva librería de interfaz, libpgtcl,
soportaba clientes basados en Tal.
Un Shell de ejemplo, pgtclsh, aportaba
nuevas órdenes Tal para interactuar con el
motor Postgres95desde programas tal
Se revisó la interfaz con objetos grandes.
Los objetos grandes de Inversión fueron el
único mecanismo para almacenar objetos
grandes (el sistema de archivos de
Inversión fue eliminado).
Se eliminó también el sistema de reglas a
nivel de instancia, si bien las reglas
siguieron disponibles como reglas de
reescritura.
Se distribuyó con el código fuente un
breve tutorial introduciendo las
características comunes de SQL y de
Postgres95.
53. Se utilizó GNU maque (en vez de
BSDmake) para la compilación.
Postgres95 también podía ser compilado
con un pc sin parches (al haberse corregido
el problema de alineación de variables de
longitud doble).
PostgreSQL
En 1996, se hizo evidente que el nombre
"Postgres95" no resistiría el paso del tiempo.
Elegimos un nuevo nombre, PostgreSQL, para
reflejar la relación entre el Postgres original y
las versiones más recientes con capacidades
SQL. Al mismo tiempo, hicimos que los
números de versión partieran de la 6.0,
volviendo a la secuencia seguida
originalmente por el proyecto Postgres.
Durante el desarrollo de Postgres95 se hizo
hincapié en identificar y entender los
problemas en el código del motor de datos.
Con PostgreSQL, el énfasis ha pasado a
aumentar características y capacidades,
aunque el trabajo continúa en todas las áreas.
54. Las principales mejoras en PostgreSQL
incluyen:
Los bloqueos de tabla han sido sustituidos
por el control de concurrencia multi-
versión, el cual permite a los accesos de
sólo lectura continuar leyendo datos
consistentes durante la actualización de
registros, y permite copias de seguridad en
caliente desde pg_dump mientras la base
de datos permanece disponible para
consultas.
Se han implementado importantes
características del motor de datos,
incluyendo subconsultas, valores por
defecto, restricciones a valores en los
campos (constraints) y disparadores
(triggers).
Se han añadido funcionalidades en línea
con el estándar SQL92, incluyendo claves
primarias, identificadores entrecomillados,
forzado de tipos cadena literales,
conversión de tipos y entrada de enteros
binarios y hexadecimales.
55. Los tipos internos han sido mejorados,
incluyendo nuevos tipos de fecha/hora de
rango amplio y soporte para tipos
geométricos adicionales.
La velocidad del código del motor de datos
ha sido incrementada aproximadamente en
un 20-40%, y su tiempo de arranque ha
bajado el 80% desde que la versión 6.0 fue
lanzada.
Modelo de identidad de relación
Este modelo se obtieneen tiempo de diseño de la base
de datos. Fue propuestopor Peter Chen en 1976 y desde
entoncesse viene utilizando de una forma muy global.
Se caracteriza por utilizar una serie de símbolos y reglas
para representarlos datos y sus relaciones.
Con este modelo conseguimos representarde manera
gráfica la estructuralógica de una base de datos.
Los principaleselementos del modelo entidad-relación
son las entidadescon sus atributosy las relaciones entre
entidades.
56. Elementosdel modelo entidad-relación
Entidad
Se trata de un objeto del que se recoge información de
interés de cara a la base de datos. Gráficamente se
representan mediante un rectángulo. Un ejemplo seria la
entidad banco, dondese recogerían los datos relativos a
ese banco, como puedeser el nombre, el número de
sucursal, la dirección, etc.
Dentro de las entidadespueden ser fuertes o débiles.
Las fuertes son las que no dependende otras entidades
para existir, mientras que las entidadesdébiles siempre
dependende otra entidad sino no tienen sentido por
ellas mismas.
Relación
Podemos definir la relación como una asociación de dos
o más entidades. A cada relación se le asigna un
nombre para poderdistinguirla de las demás y saber su
función dentro del modelo entidad-relación. Otra
característica es el grado de relación, siendo las de
grado 1 relaciones que solo relacionan una entidad
consigo misma. Las de grado 2 son relaciones que
asocian dos entidades distintas, y las de grado n que se
tratan de relaciones que unen más de dos entidades.
Las relaciones se representas gráficamente con rombos,
57. dentro de ellas se colocael nombre de la relación.
Otra característica es el tipo de correspondenciaentre
dos relaciones;
1:1. Uno a uno, a cada ocurrenciade una entidad le
correspondecomo máximo una ocurrencia de la otra
entidad relacionada.
1: N. Uno a Mucho, a cada ocurrenciade la entidad A
le pueden correspondervarias de la entidad B.
N: M. Muchos a muchos, cada ocurrencia de una
entidad puede contenervarias de la otra entidad
relacionaday viceversa.
Para finalizar las características de la relación tenemos
la cardinalidad que define el número máximo y mínimo
de ocurrenciasde cada tipo de entidad. Se representa
con los valores máximo coma mínimo encerradosentre
paréntesis encima de la relación. (máximo, mínimo)
Atributo
Se define como cada una de las propiedadesde una
entidad o relación. Cada atributo tiene un nombre y
todoslos posibles valores que puede tener. Dentro de
una entidad tiene que haber un atributo principal que
identifica a la entidad y su valor tiene que ser único. Un
ejemplo de atributo principal seria el dni dentro de la
entidad persona.
Ponemos un ejemplo de lo que sería un esquema del
58. modelo entidad-relación.
Modelo racional
El Modelo Entidad-Relación, también conocido como
DER (diagramas entidad-relación) es una herramienta
de modelado para bases de datos, propuesto por Peter
Chen en 1976, mediante el cual se pretende ‘visualizar’
los objetos que pertenecen a la Base de Datos como
entidades (se corresponde al concepto de clase, cada
tupla representaría un objeto, de la Programación
Orientada a Objetos) las cuales tienen unos atributos y
se vinculan mediante relaciones.
Es una representación conceptual de la información.
Mediante una serie de procedimientos se puede pasar
59. del modelo E-R a otros, como por ejemplo el modelo
relacional.
El modelado entidad-relación es una técnica para el
modelado de datos utilizando diagramas entidad
relación.No es la única técnica pero sí la más utilizada.
Brevemente consiste en los siguientes pasos:
7.Se parte de una descripción textual del problema o
sistema de información a automatizar (los requisitos).
8.Se hace una lista de los sustantivos y verbos que
aparecen.
9.Los sustantivos son posibles entidades o atributos.
10. Los verbos son posibles relaciones.
11. Analizando las frases se determina la cardinalidad
de las relaciones y otros detalles.
12. Se elabora el diagrama (o diagramas) entidad-
relación.
13. Se completa el modelo con listas de atributos y una
descripción de otras restricciones que no se pueden
reflejar en el diagrama.
Dado lo rudimentario de esta técnica se necesita cierto
entrenamiento y experiencia para lograr buenos
modelos de datos.
60. El modelado de datos no acaba con el uso de esta
técnica. Son necesarias otras técnicas para lograr un
modelo directamente implementable en una base de
datos. Brevemente:
Transformación de relaciones múltiples en binarias.
Normalización de una base de datos de relaciones
(algunas relaciones pueden transformarse en atributos
y viceversa).
Conversión en tablas (en caso de utilizar una base de
datos relacional).
61. Las consultas
Las consultas en Access nos permiten ‘filtrar’
la información proveniente de una tabla. Por
ejemplo, en el caso de trabajar con una tabla
que contuviera una agenda telefónica,
podríamos, mediante una consulta, hacer que
aparecieran en pantalla solo los teléfonos de
las personas que fueran de una determinada
ciudad, o los que tuvieran unos apellidos
determinados.
Podemos utilizar consultas tanto para campos
numéricos como para campos de tipo texto.
Para comprender mejor como funcionan las
consultas, crea la siguiente tabla en Access (si
no sabes cómo hacerlo, míralo en el capítulo 1
de este tutorial). Todos los campos son de tipo
‘texto’, ten en cuenta que, aunque el teléfono
va a contener números, no vamos a realizar
operaciones con ellos (no vamos a sumar los
números de teléfono, por ejemplo).
62. además, puede que queramos incluir guiones
(-), paréntesis u otros signos dentro del
número. Cuando guardes la tabla asígnale el
nombre de ‘AGENDA’ (sin las comillas)
Nombre Apellidos Ciudad Teléfono
Antonio García Cádiz 8422597
Ana López Milán 7798542
Antonio Fernández Cádiz 2971102
Ana García Londres 0524457
Esta tabla contiene cuatro registros. Cada uno
contiene los datos personales de algunas
personas. Una vez que tengas creada la tabla y
hayas introducido los cuatro registros cierra la
tabla (pero no cierres la base de datos)
Para crear una consulta,
Primero debes activar el apartado de consultas
en la ventana de la base de datos.
63. Fíjate que en la parte superior aparece junto a
‘Tablas’, el apartado ‘Consultas’, haz clic
sobre este apartado para crear la consulta
Haz clic sobre el botón ‘Nuevo’
Selecciona la opción Vista diseño y pulsa el
botón aceptar
Aparecerá una nueva ventana con todas las
tablas que tienes creadas en la base de datos.
Entre ellas debe de aparecer la que acabas de
crear AGENDA (o el nombre que le hayas
asignado)
Selecciónala con el botón izquierdo del ratón
y luego pulsa el botón Agregar. Si lo haces
bien, verás que aparece una pequeña ventana
en la parte superior izquierda de la pantalla
con el nombre de la tabla (si no es así, vuelve
a repetir la operación hasta que aparezca)
Pulsa el botón Cerrar
Fíjate que en la pequeña ventana que tienes
arriba, aparecen los nombres de los campos de
la tabla (nombre, apellidos, ciudad y teléfono)
En la parte de abajo aparece otra ventana más
64. grande (que está vacía) llena de filas (campo,
tabla, orden, mostrar, criterios, o).
Haz un doble clic con el botón izquierdo del
ratón sobre el campo ‘Nombre’ (en la ventana
pequeña de arriba). Si lo haces bien, verás que
este campo aparece en la primera de las
columnas de la ventana de abajo y que debajo
del nombre del campo, aparece el nombre de
la tabla
Repite lo mismo para el campo apellidos (haz
un doble clic sobre él con el botón izquierdo
del ratón)
Si lo has hecho bien, deberías tener dos
columnas, una con el campo ‘nombre’ y otra a
la izquierda con el campo ‘apellidos’
Para comprobar el resultado haz clic sobre el
botón ‘Vista’ (en la parte superior de la
ventana de Access, el primero de la izquierda,
justo debajo de la palabra ‘Archivo’).
Si lo has hecho bien, verás que aparecen los
datos de la tabla, pero solo el nombre y los
65. apellidos, no aparecen los otros dos campos
porque no han sido añadidos.
La indexación
La indexación es la principal herramienta para
optimizar el rendimiento general de cualquier
base de datos. Es también la más conocida por
los usuarios de servidores Misal y,
paradójicamente, su no utilización es una de
las principales causas de bajo rendimiento en
servidores de bases de datos.
Muchos administradores y diseñadores
simplemente parecen olvidar usar índices
para optimizar los accesos a las bases de
datos. Por otro lado, algunas personas
tienden a indexar todo, esperando que de
66. esta manera el servidor acelere cualquier
tipo de consulta que se le solicite. En
realidad, esta práctica puede causar una
disminución en el rendimiento, sobre todo
en lo que respecta a inserciones y
modificaciones.
Para ver las ventajas de utilizar índices,
analizaremos en primer término una simple
búsqueda en una tabla sin índice alguno:
• El constante acceso de escritura de una
tabla la mantiene desordenada.
• La ordenación de una tabla es una
operación costosa: el servidor tendría que
detenerse un tiempo considerable para ordenar
sus tablas.
• Muchas tablas tienen más de un criterio de
ordenación: ordenar según una columna
implica desordenar otra.
67. • La inserción y eliminación de datos sin
alterar el orden en una tabla es costosa: la
inserción de un registro en una tabla grande
implicaría una larga espera en la actualización
de la misma.
• Si se opta por mantener la tabla
desordenada (que es la opción más viable),
una búsqueda implicaría forzosamente un
recorrido secuencial (también denominado full
san), registro por registro.
El uso de índices en la ordenación de las bases
de datos ofrece las ventajas siguientes:
• Permite ordenar las tablas por varios
criterios simultáneamente.
• Es menos costoso ordenar un archivo
índice, porque incluye sólo referencias a la
información y no la información en sí.
• El coste de inserción y eliminación es
menor.
68. • Con los registros siempre ordenados se
utilizarán algoritmos mucho más eficientes
que el simple recorrido secuencial en las
consultas.
El uso de índices también comporta alguna
desventaja:
• Los índices ocupan espacio en disco.
• Aun teniendo registros pequeños, el
mantener en orden un índice disminuye la
velocidad de las operaciones de escritura sobre
la tabla.
A pesar de estos inconvenientes, la utilización
de índices ofrece mayores ventajas que
desventajas, sobre todo en la consulta de
múltiples tablas, y el aumento de rendimiento
es mayor cuanto mayor es la tabla.
Consideremos por ejemplo una consulta sobre
las tablas A, B, y C, independientemente del
contenido de la cláusula share, las tres tablas
se deben de combinar para hacer posible
posteriormente el filtrado según las
condiciones dadas:
69. selecta *
Fromm A,B,C
share A. A = C.V.
and C.V. = CC.;
Consideremos que no son tablas grandes, que
no sobrepasan los 1.000 registros. Si A tiene
500 registros, B tiene 600 y C 700, la tabla
resultante de la consulta anterior tendrá 210
millones de registros. Misal haría el producto
cartesiano de las tres tablas y, posteriormente,
se recorrería la relación resultante para buscar
los registros que satisfacen las condiciones
dadas, aunque al final el resultado incluya
solamente 1.000 registros.
Si utilizamos índices Misal los utilizaría de
una forma parecida a la siguiente:
• Tomaría cada uno de los registros de A.
• Por cada registro de A, buscaría los
registros en B que cumpliesen con la
condición A. A = B.b. Como B está indexado
por el atributo 'b', no necesitaría hacer el
70. recorrido de todos los registros, simplemente
accedería directamente al registro que
cumpliese la condición.
• Por cada registro de A y B encontrado en
el paso anterior, buscaría los registros de C
que cumpliesen la condición B.b = C.c. Es el
mismo caso que en el paso anterior.
Comparando las dos alternativas de búsqueda,
la segunda ocuparía cerca del 0,000005% del
tiempo original.
71. Base de datos distribuidas
Una Base de Datos Distribuida (BDD) es, una base de
datos construida sobre una red de computadores. La
información que estructura la base de datos esta
almacenada en diferentes sitios en la red, y los
diferentes sistemas de información que las utilizan
accesan datos en distintas posiciones geográficas.
72. Por ende, una Base de Datos Distribuida es una
colección de datos que pertenecen lógicamente a un
solo sistema, pero se encuentra físicamente distribuido
en varios computadores o servidores de datos en una
red de computadoras. Un sistema de bases de datos
distribuidas se compone de un conjunto de sitios
lógicos, conectados entre sí, mediante algún tipo de red
de comunicaciones, en el cual:
Cada sitio lógico puede tener un sistemade base de
datos.
Los sitios han sido diseñados para trabajar en
conjunto, con el fin de que un usuario de cualquier
posición geográfica pueda obtener acceso a los
datos desde cualquier punto de la red tal como si
todos los datos estuvieran almacenados en la
posición propia del usuario. Entonces, la llamada
"Base de Datos Distribuida" es en realidad una
especie de “objeto virtual”, cuyos componentes se
almacenan físicamente en varias “bases de datos
reales” ubicadas en diferentes sitios. En esencia es
la unión lógica de esas diferentes bases de datos.
En otras palabras, cada sitio tiene sus propias “bases de
datos reales" locales, sus propios usuarios locales, sus
73. propios SGBD y programas para la administración de
transacciones y su propio administrador de
comunicación de datos. Asípues, el sistemade bases de
datos distribuidas puede considerarse como una
especie de sociedad entre los diferentes SGBD
individuales locales. Un nuevo componente de software
en cada sitio realiza las funciones de sociedad
necesarias; y es la combinación de este nuevo
componente y el SGBD ya existente constituyen el
llamado Sistema de Administración o Gestión de Bases
de Datos Distribuidas - SGBDD. (En inglés DDBMS,
Distributed Data Base Management System).
Desde el punto de vista del usuario final, un sistema
distribuido deberá ser idéntico a un sistema no
distribuido. Los usuarios de un sistema distribuido se
comportan en su manipulación de información
exactamente como si el sistema no estuviera
distribuido. Todos los problemas de los sistemas
distribuidos son de tipo interno o a nivel de realización,
no pueden existir problemas de tipo externo o a nivel
del usuario final.
Los datos que se encuentran distribuidos en varios sitios
y que están interconectados por una red de
comunicaciones tienen capacidad de procesamiento
autónomo de transacciones y hacer procesos locales.
Cada sitio realiza la ejecución de al menos una
transacción global, la cual requiere accesos a datos en
diversos sitios.
Los principios fundamentales de un sistema de datos
distribuido son:
1. Autonomía local.
2. No dependencia de un sitio central.
3. Operación continúa.
4. Independencia con respecto a la localización.
5. Independencia con respecto a la fragmentación.
6. Independencia de réplica.
7. Procesamiento distribuido de consultas.
8. Manejo distribuido de transacciones.
9. Independencia con respecto al equipo.
10. Independencia con respecto al sistema operativo.
74. 11. Independencia con respecto a la red.
12. Independencia con respecto al SGBD.
Estos doce postulados no son todas independientes
entre sí, ni tienen toda la misma importancia que cada
usuario le otorgue. Sin embargo, sí son útiles como
fundamento para entender la tecnología distribuida y
como marco de referencia para caracterizar la
funcionalidad de sistemas distribuidos específicos.
1. Autonomía local: Los sitios o posiciones de un sistema
distribuido deben ser autónomos. La autonomía local
significa que todas las operaciones en un sitio
determinado se controlan en ese sitio; ningún sitio A
deberá depender de algún otro sitio B para su buen
funcionamiento (pues de otra manera el sitio A podría
ser incapaz de trabajar, aunque no tenga en sí problema
alguno, si cae el sitio B). La autonomíalocal significa que
existe un propietario y un administrador local de los
datos, con responsabilidad local: todos los datos
pertenecen a una base de datos local, aunque los datos
sean accesibles desde algún sitio distante. Todo el
manejo de la seguridad y la integridad de los datos se
efectúan con control de la instalación y administración
local.
2. No dependencia de un sitio central: La no
dependencia de un sitio central, sería lo ideal, pero si
esto no se logra la autonomía local completa se vería
comprometida. La dependencia de un sitio central no es
práctica al menos por las siguientes razones: en primer
lugar, estos sitios podrían generar un cuello de botella,
y, en segundo lugar, el sistema sería vulnerable; si el
sitio central sufriera un desperfecto, todo el sistema
dejaría de funcionar.
3. Operación continúa: En un sistema distribuido, lo
mismo que en uno no distribuido, nunca debería haber
necesidad de apagar o dejar de funcionar. Es decir, el
sistema nunca debería necesitar apagarse para que se
pueda realizar alguna operación, como añadirse un
nuevo sitio o instalar una versión mejorada del SGBD en
un sitio ya existente.
4. Independencia con respecto a la localización: La
independencia con respecto a la localización, permite
que los usuarios finales no sepan dónde están
almacenados físicamente los datos, sino que trabajen
como si todos los datos estuvieran almacenados en su
propio sitio local. La independencia con respecto a la
localización es deseable porque simplifica los sistemas
de información de los usuarios y sus actividades en la
75. terminal. Esto hace posible la migración de datos de un
sitio a otro sin anular la validez de ninguno de esos
sistemas o actividades. Esta función de migración
permite modificar la distribución de los datos dentro de
la red, en respuesta a cambios en los requerimientos de
desempeño.
5. Independencia con respecto a la fragmentación: Un
sistema tiene fragmentación de datos solo si es posible
dividir una relación en partes o "fragmentos" para
propósitos de almacenamiento físico. La fragmentación
es deseable por razones de desempeño: los datos
pueden almacenarse en la localidad donde se utilizan
con mayorfrecuencia, de manera que la mayor parte de
las operaciones sean solo locales y se reduzca el tráfico
en la red de cómputo. Existen en esencia dos clases de
fragmentación, la fragmentación horizontal y la
fragmentación vertical; estos tipos de fragmentación
son correspondientes a las operaciones relacionales de
restricción y proyección, respectivamente. Un
fragmento puede ser cualquier sub relación que pueda
derivarse de la relación original mediante operaciones
de restricción y proyección; la reconstrucción de la
relación originada a partir de los fragmentos se hace
mediante operaciones de reunión y unión (reunión en el
caso de fragmentación vertical, y la unión en casos de
fragmentación horizontal).
6. Independencia de réplica: Un sistema maneja réplica
de datos si una relación dada se puede representar en
el nivel físico mediantevarias copias réplicas, en muchos
sitios distintos. La réplica es deseable al menos por dos
razones: en primer lugar, puede producir un mejor
desempeño (las aplicaciones pueden operar sobre
copias locales en vez de tener que comunicarse con
sitios remotos); en segundo lugar, también puede
significar una mejor disponibilidad (un objeto estará
disponible para su procesamiento en tanto esté
disponible por lo menos una copia, al menos para
propósitos de recuperación). La desventaja principal de
las réplicas es cuando se pone al día un cierto objeto
copiado, deben ponerse al día todas las réplicas de ese
objeto. La réplica debe ser "transparentepara el usuario
final", un sistema que maneja la réplica de los datos
deberá ofrecer también una independencia de réplica
(conocida también como transparencia de réplica); es
decir, los usuarios deberán comportarse como si sólo
existiera una copia de los datos.
76. 7. Procesamiento distribuido de consultas: Este manejo
de datos en las consultas permite las consultas
eficientes desde diferentes usuarios con las
características que determine el sistema;la consulta de
datos es más importante en un sistema distribuido que
en uno centralizado. Lo esencial es que, en una consulta
donde están implicados varios sitios, habrá muchas
maneras de trasladar los datos en la red de cómputo
para satisfacer la solicitud, y es crucial encontrar una
estrategia suficiente. Por ejemplo, una solicitud de
unión de una relación Rx almacenada en el sitio X y una
relación Ry almacenada en el sitio Y podría llevarse a
cabo trasladando Rx a Y o trasladando Ry a X, o
trasladando las dos a un tercer sitio Z.
8. Manejo distribuido de transacciones: Este manejo
tiene dos aspectos principales, el control de
recuperación y el control de concurrencia, cada uno de
los cuales requiere un tratamiento más amplio en el
ambiente distribuido. En un sistema distribuido, una
sola transacción puede implicar la ejecución de
programas o procesos en varios sitios (en particular
puede implicar actualizaciones en varios sitios). Por
esto, cada transacción está compuesta de varios
agentes, donde un agente es el proceso ejecutado en
nombre de una transacción dada en determinado sitio.
Y el sistema necesita saber cuándo dos agentes son
parte de la misma transacción. Es importante aclarar
que no puede haber un bloqueo mutuo entre dos
agentes que sean parte de la misma transacción.
9. Independencia con respecto al equipo: Las
instalaciones de cómputo en el mundo real por lo
regular incluyen varias máquinas de diferentes marcas
comerciales como IBM, DELL, HP, SUN, entre otras; por
esta razón existe una verdadera necesidad de poder
integrar los datos en todos esos sistemas y presentar al
usuario "una sola imagen del sistema". Por tanto,
conviene ejecutar el mismo SGBD en diferentes
equipos, y además lograr que esos diferentes equipos se
integren en un sistema distribuido.
10. Independencia con respecto al sistemaoperativo: Es
necesario y conveniente no sólo de poder ejecutar el
mismoSGBD en diferentes equipos, sino también poder
ejecutarlo en diferentes sistemas operativos y lograr
que una versión LINUX y una WINDOWS participen
todas en el mismo sistema distribuido.
11. Independencia con respecto a la red: Si el sistema
puede manejar múltiples sitios, con equipos distintos y
diferentes sistemas operativos, resulta obvia la
77. conveniencia de manejar también varios tipos de redes
de comunicación distintas.
12. Independencia con respecto al SGBD: En la
independencia con respecto a su manejo, se requiere
que los SGBD en los diferentes sitios manejen toda la
misma interfaz; no necesitan ser por fuerza copias del
mismo sistema.
Ventajas y desventajas
Ventajas de la distribución de datos:
La principal ventaja de los sistemas
distribuidos es la capacidad de compartir y
acceder a la información de una forma fiable y
eficaz.
78. Utilización compartida de los datos y
distribución del control:
La ventaja principal de compartir los datos por
medio de la distribución es que cada localidad
pueda controlar hasta cierto punto los datos
almacenados localmente. En un sistema
centralizado, el administrador de base de datos
de la localidad central controla la base de datos.
En un sistema distribuido existe un
administrador global de la base de datos que se
encarga de todo el sistema. Parte de esta
responsabilidad se delega al administrador de
base de datos de cada localidad. Dependiendo
del diseño del sistema distribuido, cada
administrador local podrá tener un grado de
autonomía diferente que se conoce como
autonomía local.
La posibilidad de contar con autonomía local
es en muchos casos una ventaja importante de
las bases de datos distribuidas.
Fiabilidad y disponibilidad:
79. Si se produce un fallo en una localidad de un
sistema distribuido, es posible que las demás
localidades puedan seguir trabajando. En
particular, si los datos se repiten en varias
localidades, una transacción que requiere un
dato específico puede encontrarlo en más de
una localidad. Así, el fallo de una localidad no
implica necesariamente la desactivación del
sistema.
El sistema debe detectar cuando falla una
localidad y tomar las medidas necesarias para
recuperarse del fallo. El sistema no debe seguir
utilizando la localidad que falló. Por último,
cuando se recupere o repare esta localidad,
debe contarse con mecanismos para
reintegrarla al sistema con el mínimo de
complicaciones.
La disponibilidad es fundamental para los
sistemas de bases de datos que se utilizan en
aplicaciones de tiempo real. Por ejemplo, si una
80. línea aérea no puede tener acceso a la
información, es posible que pierda clientes a
favor de la competencia.
Agilización del procesamiento de consultas:
Si una consulta comprende datos de varias
localidades, puede ser posible dividir la
consulta en varias sub-consultas que se
ejecuten en paralelo en distintas localidades.
Sin embargo, en un sistema distribuido no se
comparte la memoria principal, así que no todas
las estrategias de intersección se pueden aplicar
en estos sistemas. En los casos en que hay
repetición de los datos, el sistema puede pasar
la consulta a las localidades más ligeras de
carga.
Desventajas de la distribución de los datos:
81. La desventaja principal de los sistemas
distribuidos es la mayor complejidad que se
requiere para garantizar una coordinación
adecuada entre localidades.
El aumento de la complejidad se refleja en:
· Coste del desarrollo de software: es
más difícil estructura un sistema de bases
de datos distribuidos y por tanto su coste
es menor.
Mayor posibilidad de errores: puesto que
las localidades del sistema distribuido
operan en paralelo, es más difícil garantizar
que los algoritmos sean correctos.
Mayor tiempo extra de procesamiento: El
intercambio de mensajes y los cálculos
adicionales son una forma de tiempo extra
que no existe en los sistemas centralizados.
82.
83. Base de datos NOSQL
Cuando pensamos en bases de datos relacionalesa
nuestra mente suelen acudir los mismos nombres. En la
parte comercial tenemos Oracle y Microsoft SQL
Server. Del lado del software libre, tenemos opciones
como Postgre SQL o MySQL. Aunquecada una tiene
sus peculiaridades, para un desarrolladorno es difícil
elegir entre un sistema y otro. Al final todo son tablas,
columnas, claves primarias, y sobre todo, consultas
SQL. La decisión de cuál elegir, se basará en sus
características y precio.
Si hablamos de bases de datos NoSQL, la cosa se
complica. A día de hoy existen unos 150 sistemas de
bases de datos NoSQL. Elegir uno de ellos puedeser
muy difícil, ya que ninguno ha obtenido todavía la fama
que sí han conseguido las bases de datos relacionales.
Pero el problema principal que encontramos, es que,
aunquetodas se denominan NoSQL, en realidad hay
diferentes tipos. Dependiendode lo que necesitemos,
deberemos decantarnospor una u otra.
Aunquehay varias aproximaciones diferentes para
clasificar las bases de datos NoSQL (Teorema CAP,
basándonosen el modelo de datos etc.), en general se
considera que existen cuatro tipos diferentes: orientadas
a documentos, orientadasa columnas, de clave-valor y
en grafo.
84. Así que veamos en qué consisten estos sistemas, para
que podamos elegir la opciónque mejor se adapte a
nuestras necesidades.
Ventajas y desventajas de las bases de datos
NoSQL
Ventajas
Las bases de datos de NoSQL presentan
muchas ventajas en comparación con las bases
de datos tradicionales.
A diferencia de las bases de datos
relacionales, las bases de datos NoSQL están
basadas en key-value pairs
Algunos tipos de almacén de bases de datos
NoSQL incluyen diferentes tipos de almacenes
como por ejemplo el almacén de columnas, de
documentos, de key valué store, de gráficos,
de objetos, de XML y otros modos de almacén
de datos.
85. Algunos tipos de almacén de bases de datos
NoSQL incluyen almacenes de columnas, de
documentos, de valores de claves, de gráficos,
de objetos, de XML y otros modos de almacén
de datos.
Podría decirse que las bases de datos NoSQL
de código abierto tienen una implementación
rentable. Ya que no requieren las tarifas de
licencia y pueden ejecutarse en hardware de
precio bajo.
Cuando trabajamos con bases de datos
NoSQL, ya sean de código abierto o tengan un
propietario, la expansión es más fácil y más
barata que cuando se trabaja con bases de
datos relacionales. Esto se debe a que se
realiza un escalado horizontal y se distribuye
la carga por todos los nodos. En lugar de
realizarse una escala vertical, más típica en los
sistemas de bases de datos relacionales.
86. Desventajas
Por supuesto, las bases de datos NoSQL no
son perfectas, y no siempre van a ser la elección
ideal.
La mayoría de las bases de datos NoSQL no
admiten funciones de fiabilidad, que son
soportadas por sistemas de bases de datos
relacionales. Estas características de fiabilidad
pueden resumirse en: “atomicidad,
consistencia, aislamiento y durabilidad.” Esto
también significa que las bases de datos
NoSQL, que no soportan esas características,
ofrecen consistencia para el rendimiento y la
escalabilidad.
Con el fin de apoyar las características de
fiabilidad y coherencia, los desarrolladores
deben implementar su propio código, lo que
agrega más complejidad al sistema.
Esto podría limitar el número de aplicaciones
en las que podemos confiar para realizar
transacciones seguras y confiables, como por
ejemplo los sistemas bancarios.
87. Otras formas de complejidad encontradas en
la mayoría de las bases de datos NoSQL,
incluyen la incompatibilidad con consultas
SQL. Esto significa que se necesita un
lenguaje de consulta manual, haciendo los
procesos mucho más lentos y complejos.
88. Conclusión
La base de datos nos enseña muchas cosas como
crear una tabla, formulario, a identificar los
campos etc.
Este libro nos enseña muchas cosas del
desarrollamiento de base de datos y muchas
cosas más.
89. Bibliografía
Nació el día 4 de
diciembre del año 2002
En Santo Domingo Republica Dominicana
Nació en villa mella y estudia en la escuela cristo obrero
Alos 12 años entro a la escuela cristo obrero desde séptimo
hasta segundo de bachiller
Luego en técnico de informática.