TALLER DE BASE DE DATOS
UNIDAD II
(TAREA No. 1 REALIZAR UNA PRESENTACION DEL COMO UTILIZAR
MYSQL TANTO EL SOFTWARE INSTALADO COMO EN SOFTWARE
PORTABLE)
ESTRUCTURA DE UN SISTEMA DE BASES DE DATOS.
Un sistema de bases de datos se divide en módulos que se encargan de cada una de las
responsabilidades del sistema completo. A grandes rasgos se puede dividir en dos los
componentes: gestor de almacenamiento y procesador de consultas.
GESTOR DE ALMACENAMIENTO
Proporciona la interfaz entre los datos de bajo nivel en la base de datos y los programas de
aplicación y consultas emitidas al sistema. Es responsable de la interacción con el gestor de
archivos para realizar el almacenamiento, recuperación y actualización de los datos en la
base de datos.
Entre sus componentes se incluyen:
a) Gestor de autorización e integridad, comprobando que se satisfagan las restricciones
de integridad y la autorización de los usuarios para acceder a los datos.
b) Gestor de transacciones, asegura la consistencia de la base de datos a pesar de los
fallos del sistema, y controla las transacciones concurrentes.
c) Gestor de archivos, gestiona la reserva de espacio de almacenamiento de disco y las
estructuras de datos usadas para representar la información almacenada en disco.
d) Gestor de memoria intermedia, permite que la base de datos maneje tamaños de datos
mucho mayores que el tamaño de la memoria principal.
PROCESADOR DE CONSULTAS
Ayuda al sistema de bases de datos a simplificar y facilitar el acceso a los datos.
Sus componentes incluyen:
a) Intérprete del LDD, interpreta las instrucciones del LDD (Lenguaje de definición de
datos) y registra las definiciones en el diccionario de datos. Una vez finalizado el diseño de
una base de datos y escogido un SGBD (Sistema de Gestión de la Base de Datos) para su
implementación, el primer paso consiste en especificar el esquema conceptual y el esquema
interno de la base de datos, y la correspondencia entre ambos. En muchos SGBD no se
mantiene una separación estricta de niveles, por lo que el administrador de la base de datos
y los diseñadores utilizan el mismo lenguaje para definir ambos esquemas, es el lenguaje de
Elaboró: M. en C. Ing. David Cortés Abad
8
TALLER DE BASE DE DATOS
definición de datos (LDD). El SGBD posee un compilador de LDD cuya función consiste
en procesar las sentencias del lenguaje para identificar las descripciones de los distintos
elementos de los esquemas y almacenar la descripción del esquema en el catálogo o
diccionario de datos. El diccionario contiene metadatos (representan el contenido
informativo): describe los objetos de la base de datos. Cuando en un SGBD hay una clara
separación entre los niveles conceptual e interno, el LDD sólo sirve para especificar el
esquema conceptual. Para especificar el esquema interno se utiliza un lenguaje de
definición de almacenamiento (LDA). Las correspondencias entre ambos esquemas se
pueden especificar en cualquiera de los dos lenguajes. Para tener una verdadera arquitectura
de tres niveles sería necesario disponer de un tercer lenguaje, el lenguaje de definición de
vistas (LDV), que se utilizaría para especificar las vistas de los usuarios y su
correspondencia con el esquema conceptual.
b) Compilador del LMD, (Lenguaje de manejo de datos) traduce las instrucciones del
LMD en un lenguaje de consultas a instrucciones de bajo nivel que entiende el motor de
evaluación de consultas. El compilador del LMD también optimiza las consultas. Una vez
creados los esquemas de la base de datos, los usuarios necesitan un lenguaje que les permita
manipular los datos de la base de datos: realizar consultas, inserciones, eliminaciones y
modificaciones. Este lenguaje es el que se denomina lenguaje de manejo de datos (LMD).
Hay dos tipos de LMD: los procedurales y los no procedurales. Con un LMD procedural el
Programador, especifica qué datos se necesitan y cómo hay que obtenerlos. Esto quiere
decir que el usuario debe especificar todas las operaciones de acceso a datos llamando a los
procedimientos necesarios para obtener la información requerida. Estos lenguajes acceden a
un registro, lo procesan y basándose en los resultados obtenidos, acceden a otro registro,
que también deben procesar. Así se va accediendo a registros y se van procesando hasta que
se obtienen los datos deseados. Las sentencias de un LMD procedural deben estar
infiltradas en un lenguaje de alto nivel, ya que se necesitan sus estructuras (bucles,
condicionales, etc.) para obtener y procesar cada registro individual. A este lenguaje se le
denomina lenguaje anfitrión. Las bases de datos jerárquicas y de red utilizan LMD
procedurales.
Un LMD no procedural se puede utilizar de manera independiente para especificar
operaciones complejas sobre la base de datos de forma concisa. En muchos SGBD se
pueden introducir interactivamente instrucciones del LMD desde un terminal o bien
infiltrarlas en un lenguaje de programación de alto nivel. Los LMD no procedurales
permiten especificar los datos a obtener en una consulta o los datos que se deben actualizar,
mediante una sola y sencilla sentencia. El Programador especifica qué datos quiere obtener
o acceder a ellos. El SGBD traduce las sentencias del LMD en uno o varios procedimientos
que manipulan los conjuntos de registros necesarios. Esto libera al usuario de tener que
conocer cuál es la estructura física de los datos y qué algoritmos se deben utilizar para
acceder a ellos. A los LMD no procedurales también se les denomina declarativos. Las
bases de datos relacionales utilizan LMD no procedurales, como SQL (Structured Query
Language). Los lenguajes no procedurales (lenguajes como “c”) son más fáciles de
aprender y de usar que los procedurales (paquetes de programación como Visual Studio) y
el programador debe realizar menos trabajo, siendo el SGBD quien hace la mayor parte.
Elaboró: M. en C. Ing. David Cortés Abad
9
TALLER DE BASE DE DATOS
La parte de los LMD no procedurales que realiza la obtención de datos es lo que se
denomina un lenguaje de consultas. En general, las órdenes tanto de obtención como de
actualización de datos de un LMD no procedural se pueden utilizar interactivamente, por lo
que al conjunto completo de sentencias del LMD se le denomina lenguaje de consultas,
aunque es técnicamente incorrecto.
c) Motor de evaluación de consultas. Ejecuta las instrucciones de bajo nivel generadas
por el compilador del LMD, es decir determina como se llevara a cabo cada consulta, si
ésta es para un usuario o bien para consulta de la empresa u organización.
Estructura general del sistema.
Elaboró: M. en C. Ing. David Cortés Abad
10
TALLER DE BASE DE DATOS
Descripción.
Usuarios Normales. Son aquellos usuarios que buscan información con el propósito de
adquirir un servicio, como el objetivo principal de la organización es la captación de
clientes, a este tipo de usuarios se les debe ofrecer toda una gama de información del
servicio que se les ofrece, es por ello que cobra importancia mostrarles con campos visuales
que capten su atención.
Programadores de Aplicaciones. Son los diseñadores de los programas y las rutinas que
tienen a su cargo el buen funcionamiento de la Base de Datos, son los encargados de
estructurar cada rutina de la Base de Datos, dar coherencia y lógica a los procesos internos
que manipulen la información y entregar resultados óptimos de todo el procesamiento de
datos; además de crear ventanas de dialogo adecuadas para captura, consulta e informes de
transacciones y movimientos.
Usuarios Sofisticados. Son los usuarios que hacen uso de Base de Datos principalmente
para realizar todo tipo de consultas, normalmente con el propósito de tomar decisiones al
realizar algún tipo de transacción o movimiento.
Administrador de Base de Datos. Estos usuarios, ocupan un lugar muy importante para la
Base de Datos, el número de integrantes necesariamente deberá ser limitado para evitar un
mal manejo de la gestión de la Base de Datos, dependiendo de la complejidad de la misma
y sus alcances es como se toma la decisión para el numero de administradores, en la
mayoría de los casos, se asigna a una sola persona que lleve a cabo el control y la
administración, dado que de esa manera para cualquier contingencia ésta pueda ser atendida
por la misma persona en todo momento.
(TAREA No. 2 REALIZAR UNA PRESENTACION DEL COMO CREAR Y
MANEJAR ALTAS Y BAJAS PARA UNA BASE DE DATOS SENCILLA EN
MYSQL
MEDIOS DE ALMACENAMIENTO FÍSICO.
El objetivo de un sistema de bases de datos es simplificar y facilitar la tarea de acceso a los
datos, esto con el fin de agilizar procesos relacionados a la información contenida en la
misma Base de Datos. Los medios de almacenamiento físico, deben ser capaces de
resguardar toda la información contenida en la Base de Datos de manera segura y disponer
de ella en cualquier momento y manipular archivos de una manera flexible, eficiente y
confiable ante cualquier inconveniente que pueda surgir con la misma Base de Datos. Por
supuesto, cada usuario contara con una clave de seguridad para poder acceder en forma
privada a la cuenta virtual de almacenamiento.
Los materiales físicos en donde se almacenan los datos se conocen como medios de
almacenamiento o soportes de almacenamiento. Ejemplos de estos medios son los discos
magnéticos (disquetes anteriormente y discos duros), los discos ópticos (CD, DVD), las
Elaboró: M. en C. Ing. David Cortés Abad
11
TALLER DE BASE DE DATOS
cintas magnéticas, los discos magneto-ópticos (discos Zip, discos Jaz, SuperDisk), las
tarjetas de memoria, etc. Los componentes de hardware que escriben o leen datos en los
medios de almacenamiento se conocen como dispositivos o unidades de almacenamiento.
Por ejemplo, una disquetera o una unidad de disco óptico, son dispositivos que realizan la
lectura y/o escritura en disquetes y discos ópticos, respectivamente.
El almacenamiento se relaciona con dos procesos:
a) Lectura de datos almacenados para luego transferirlos a la memoria de la computadora.
b) Escritura o grabación de datos para que más tarde se puedan recuperar y utilizar.
Los medios de almacenamiento han evolucionado en forma notable desde las primeras
computadoras. En la actualidad existe una gran variedad tecnologías y dispositivos nuevos,
pero el disco rígido sigue siendo el "almacén" principal de la información en la
computadora.
Clasificación de los Dispositivos de Almacenamiento.
Los Dispositivos de Almacenamiento se pueden clasificar de acuerdo al modo de acceso a
los datos que contienen:
Acceso secuencial: En el acceso secuencial, el elemento de lectura del dispositivo debe
pasar por el espacio ocupado por la totalidad de los datos almacenados previamente al
espacio ocupado físicamente por los datos almacenados que componen el conjunto de
información a la que se desea acceder.
Acceso aleatorio: En el modo de acceso aleatorio, el elemento de lectura accede
directamente a la dirección donde se encuentra almacenada físicamente la información que
se desea localizar sin tener que pasar previamente por la almacenada entre el principio de la
superficie de grabación y el punto donde se almacena la información buscada.
Tipos de Dispositivos de Almacenamiento.
a) Disquetes. Hasta hace algunos años, este medio de almacenamiento extraíble que se
instaló en una PC era muy utilizado por su fácil transportación, pero por su baja capacidad
de almacenamiento con el tiempo ha sido remplazado; aunque para algunos equipos de
cómputo, siendo útiles como medio de arranque de algunas PC dadas sus características,
modelo y antigüedad.
b) Cinta Magnética. Aunque es un medio de almacenamiento que ya casi no se utiliza, por
su antigüedad, aún existen empresas y organizaciones que las tienen en resguardo porque
contienen información de los primeros procesos automatizados que llevaban a cabo con el
surgimiento de las Bases de Datos, que de alguna manera ya permitían resguardar
información con el propósito de su transportación hacia donde fuera requerida; la cinta
magnética está formada por material plástico recubierto de material ferromagnético, sobre
dicha cinta se registran los caracteres en formas de combinaciones de puntos, sobre pistas
paralelas al eje longitudinal de la cinta. Estas cintas son soporte de tipo secuencial, esto
supone un inconveniente puesto que para acceder a una información determinada se hace
necesario leer todas las que le preceden, con la consiguiente pérdida de tiempo.
Elaboró: M. en C. Ing. David Cortés Abad
12
TALLER DE BASE DE DATOS
c) Tambores Magnéticos. Están formados por cilindros con material magnético capaz de
retener información, Esta se graba y lee mediante un cabezal cuyo brazo se mueve en la
dirección del eje de giro del tambor. El acceso a la información es directo y no secuencial.
d) CD y DVD. Estos dispositivos de almacenamiento aún son muy utilizados dado que
ofrecen seguridad en el resguardo de información, aunque para varias compañías de
desarrollo de software son bien aprovechados para la venta y distribución de software.
e) Pc – Cards. La norma de PCMCIA es la que define a las PC Cards, estas pueden ser
medios de almacenamiento de I/O, son compactas y ligeras haciéndolas ideales para
equipos portátiles debido a su pequeño tamaño, son usadas para el almacenamiento de
datos, aplicaciones, tarjetas de memoria, cámaras electrónicas y teléfonos celulares. Las PC
Cards tienen el tamaño de una tarjeta del crédito, pero su espesor varía. La norma de
PCMCIA define tres PC Cards diferentes:
-Tipo I 3.3 milímetros (mm) de espesor.
-Tipo II son 5.0 mm espesor.
-Tipo III son 10.5 mm espesor.
Independientemente del tipo de Pc card que se utilice, el propósito principal de su uso es
que permite una fácil transportación de información, pero debido a los modelos de equipos
de cómputo para utilizarlas se hace necesario adquirir algún aditamento especial que haga
posible accesarlas.
f) Memoria USB. Actualmente, es un dispositivo muy utilizado por la facilidad que ofrece
al respaldar información, existen un muy diverso y variado diseño de memorias de este tipo
con diferentes capacidades, pero por su uso, se puede pensar que fue el principal medio que
remplazo a los disquetes.
g) El Disco duro. Este dispositivo es por excelencia el principal medio de almacenamiento,
dado que la gran mayoría de equipos de cómputo contienen uno (salvo aquellos que
contienen celdas de memoria como medio de almacenamiento y de trabajo), la evolución
que han tenido los discos duros ha sido para mejorar su propio funcionamiento de modelos
han cambiado de IDE a SATA actualmente los Sata, son los más utilizados dado también el
avance tecnológico que han tenido los equipos de cómputo.
Las grandes corporaciones y empresas exitosas, utilizan sin lugar a dudas como principal
medio de almacenamiento a los discos duros, porque estos ya pueden instalarse como disco
Elaboró: M. en C. Ing. David Cortés Abad
13
TALLER DE BASE DE DATOS
interno o externo, por medio de un aditamento que le permite conectarlo a un puerto USB;
los discos duros ya vienen con una capacidad más grande para resguardar un mayor número
de información, por ello se les denomina dispositivos auxiliares además que por su
estructura son más resistentes. Por lo anterior el ingeniero en sistemas deberá procurar que
en todo momento el almacenamiento físico de la información de la Base de Datos y los
respaldos que también se realicen, se hagan en disco duros.
TAREA No. 3 REALIZAR UNA PRESENTACION DEL COMO CREAR Y
MANEJAR CONSULTAS Y CAMBIOS PARA LA MISMA BASE DE DATOS EN
MYSQL DE LA TAREA ANTERIOR.)
ORGANIZACIÓN DE ARCHIVOS. Todo tipo de información se compone de dos
elementos:
a) Archivos de Datos. Son una colección de Registros, los cuales a su vez se subdividen en
diferentes campos de distinto tamaño y longitud; los registros tienen una clave única que
los identifica para realización de transacciones y movimientos.
Jerarquización de los Archivos de Datos:
BASE DE DATOS
ARCHIVOS
REGISTROS
CAMPOS
SUB CAMPOS
Elaboró: M. en C. Ing. David Cortés Abad
14
TALLER DE BASE DE DATOS
Registro. Es un conjunto de campos referentes a una entidad en particular y constituyen
una unidad para su proceso. Un ejemplo de un registro puede ser la información de un
determinado alumno universitario, que contiene los campos: libreta universitaria, apellido y
nombre, número de documento, domicilio, fecha de nacimiento, entre otros campos.
Libreta
universitaria
Apellido y
nombre
Número de
documento
Domicilio
Fecha de
nacimiento
Registro
Campo. Es un conjunto de caracteres capaz de suministrar una determinada información
referida a un concepto. Al igual que en las variables, al definir un campo hay que indicar
claramente sus características, ejemplo:
Nombre: Identifica a ese conjunto de caracteres.
Tipo: Tipo de caracteres que puede contener (alfabético, entero, etc.).
Tamaño: Cantidad de caracteres que puede contener.
Por ejemplo, si tenemos que definir al campo número de documento resultaría:
Nombre: Documento
Tipo: numérico
Tamaño: 8 enteros
Así, un campo es la entidad lógica más pequeña, consiste en un conjunto mínimo de bytes
que conforman un dato.
Estructura de los Archivos de Datos. La organización de un archivo define la forma en la
que los registros se disponen sobre el soporte de almacenamiento, es decir se define la
organización como la forma en que se estructuran los datos en un archivo.
En general, se consideran tres organizaciones fundamentales:
Organización Secuencial. Es una sucesión de registros almacenados en forma consecutiva
sobre un soporte externo. Los registros están ubicados físicamente en una secuencia
usualmente fijada por uno o más campos de control contenidos dentro de cada registro, en
forma ascendente o descendente, en esta organización, el último registro contiene una
marca (en general un asterisco) de fin de archivo, la cual se detecta con funciones tipo EOF
(end of file) o FDA (Fin de Archivo).
Registro 1
Registro 2
Registro 3
…..
Registro n
EOF
Elaboró: M. en C. Ing. David Cortés Abad
15
TALLER DE BASE DE DATOS
Organización Directa o Aleatoria (Random). Los datos se colocan y se acceden
aleatoriamente mediante su posición, es decir, indicando el lugar relativo que ocupan dentro
del conjunto de posiciones posibles. En esta organización se pueden leer y escribir
registros, en cualquier orden y en cualquier lugar. La Ventaja de este tipo de organización
es la Rapidez de acceso a un registro específico. La Desventaja o inconvenientes es cuando
se establece la relación entre la posición que ocupa un registro y su contenido, además
puede desaprovecharse parte del espacio destinado al archivo.
Registro 1
Registro n
Registro 3
…..
Registro 2
Puntero
Organización secuencial indexada. Un archivo con esta organización consta de tres áreas:
Área de índices
Área primaria
Área de excedentes (overflow: espacio para sobrecupo)
Ventajas:
a) Rápido acceso y además, el sistema se encarga de relacionar la posición de cada registro
con su contenido por medio del área de índices.
b) Gestiona las áreas de índices y excedentes.
Desventajas:
a) Necesidad de espacio adicional para el área de índices.
b) El desaprovechamiento de espacio que resulta al quedar huecos intermedios libres
después de sucesivas actualizaciones.
b) Archivos de programa. Las primeras bases de datos se construyeron para computadores
mainframe enormes en los años 60, p. ej., IBM System/360. En ese tiempo, no había PC de
escritorio, y esas bases de datos necesitaban personal altamente calificado. Aunque el
hardware de los computadores antiguos era poco fiable, era mucho más lento y tenía menos
Elaboró: M. en C. Ing. David Cortés Abad
16
TALLER DE BASE DE DATOS
capacidad de almacenamiento, una característica de las bases de datos antiguas sigue
resultando muy atractiva: muchos usuarios podían acceder a los datos mediante una red.
En los años 70, científicos formaron la teoría de las bases de datos relacionales (términos
como tabla, registro, campo y relacionalidad entre otros). Sobre los fundamentos de esta
teoría se crearon las bases de datos IBM DB2 y Oracle, que han sido desarrolladas y
utilizadas hasta estos días. A finales de los 70 se construyeron los primeros equipos de
cómputo personales. Sus usuarios pudieron (gradualmente) utilizar muchos tipos de
aplicaciones, incluyendo aquellas para el diseño y la programación de bases de datos.
Cuando se trata de las enormes bases de datos de las empresas, la situación no ha
cambiado: aún necesitan potentes y complejos dispositivos de almacenamiento para
respaldar tanto las aplicaciones que dieron forma a la Base de Datos como la información
que procesan. En el área de las bases de datos “accesibles” con interfaz de usuario gráfica
para computadoras personales, el desarrollo tecnológico ha proporcionado las siguientes
aplicaciones para su diseño y programación:
DBase. Una herramienta para el funcionamiento de bases de datos para DOS, popular en
los años 80. En la actualidad aún se utilizan archivos en formado DBase en algunos casos
específicos debido a su simplicidad.
Microsoft Access. Una aplicación para bases de datos (diseño y manipulación de datos
mediante una interfaz gráfica) con muchas simplificaciones, que las hacían adecuadas para
los principiantes, diseñada a finales de los años 80, basada en una arquitectura de 16 bits.
En la actualidad, se sigue ofreciendo este producto y su uso está muy extendido,
especialmente en empresas pequeñas, en las que no son requisitos ni la eficiencia ni un
sistema multiusuario.
FileMaker. Aplicación popular similar a MS Access en simplicidad, opera en las
plataformas Windows y Macintosh, disponible desde 1985.
FoxPro. Una aplicación similar a DBase (principios de los años 90). Después de ser
adquirida por Microsoft, se introdujo la interfaz de usuario gráfica y por eso es utilizada
para crear bases de datos en computadoras personales. Este producto todavía se ofrece,
aunque en la actualidad ya se considera obsoleto.
Kexi. Una aplicación multiplataforma (UNIX®/Linux®, Windows, Mac® OS X) diseñada
en 2003, desarrollada de acuerdo con los principios del código abierto, parte de la
comunidad global KDE, que entre otras cosas proporciona un entorno gráfico para los
sistemas UNIX/Linux. La compañía OpenOffice Poland, ha contribuido de manera
significante al desarrollo de Kexi, pero por ser una plataforma diferente de Windows no ha
sido muy difundida.
MySQL. “Para diseñar páginas que trabajen en servidor Linux, utilizaremos el lenguaje
PHP y bases de datos MySQL”, indica el director de e-tecnia. Se trata de software libre,
pero para determinadas aplicaciones comerciales hay que adquirir una versión comercial
licenciada. Disponible para Linux, Mac y Windows.
Elaboró: M. en C. Ing. David Cortés Abad
17
TALLER DE BASE DE DATOS
MICROSOFT SQL SERVER. “Para diseñar páginas que funcionen en servidores
Windows, usaremos la tecnología ASPX (ASP.NET) y bases de datos SQLserver”.
Recientemente, existe una versión gratuita, SQL Server Express Edition, aunque con ciertas
limitaciones (bases de datos de menos de 4 GB, no cuenta con el Agente de SQL Server) y
está disponible para Windows.
ORACLE. Se trata de la herramienta más potente de bases de datos, por lo que es
probable que su capacidad desborde nuestras necesidades. “Las grandes bases de datos son
Oracle, pero necesitaríamos una aplicación muy grande para utilizarlas”, disponible para
Mac, Linux y Windows.
MICROSOFT VISUAL STUDIO. Es el editor de Microsoft para SQL Server. Soporta
varios lenguajes de programación, como ASP.NET, Visual C++, Visual C#, Visual J# y
Visual Basic .NET. Puede crear aplicaciones que se intercomuniquen entre estaciones de
trabajo, páginas web y dispositivos móviles. Disponible para Windows.
ZEND STUDIO. Se trata de un editor para PHP que ofrece soporte para navegación en
base datos y ejecución de consultas SQL, con prestaciones como autocompletado, ayuda de
código, resaltado de sintaxis, etc. Disponible para Mac, Linux y Windows.
ADOBE FLASH. Es una herramienta que trabaja sobre fotogramas, gráficos vectoriales y
sonidos para la creación de las animaciones que podemos ver en los sitios web. Se trata del
estándar del mercado en este campo. Disponible para Mac y Windows. La tecnología Flash,
genera un archivo donde todos los elementos (textos, imágenes, sonidos...) quedan en un
solo fichero .swf. Es una herramienta que funciona distinta a cualquier otro programa.
Tiene una línea de tiempo y se van colocando los distintos elementos, logrando generar
movimientos, enlaces, etc.”. El W3C (consorcio internacional que genera
recomendaciones) ha recomendado SVG (gráficos vectoriales) como lenguaje alternativo a
Flash para la creación de gráficos vectoriales bidimensionales estáticos o en movimiento.
INKSCAPE. Es el programa de edición SVG más empleado y opción de software libre y
gratuito. Está disponible para Linux, Mac y Windows
(TAREA No. 4 REALIZAR UNA PRESENTACION DEL COMO CREAR Y
MANEJAR REPORTES PARA LA MISMA BASE DE DATOS EN MYSQL DE LA
TAREA ANTERIOR.)
(TAREA No. 5 REALIZAR UNA PRESENTACION DEL COMO MANEJAR LA
BASE DE DATOS EN MYSQL PERO CON PHP.)
Elaboró: M. en C. Ing. David Cortés Abad
18