Subido por Genaro Resendiz

Gestores de Bases de Datos

Anuncio
COLEGIO DE BACHILLERES
DEL ESTADO DE SONORA
Director General
Mtro. Julio Alfonso Martínez Romero
Director Académico
Dr. Manuel Valenzuela Valenzuela
Director de Administración y Finanzas
C.P. Jesús Urbano Limón Tapia
Director de Planeación
Ing. Raúl Leonel Durazo Amaya
GESTORES DE BASE DE DATOS
Módulo de Aprendizaje.
Copyright ©, 2011 por Colegio de Bachilleres
del Estado de Sonora
todos los derechos reservados.
Segunda edición 2012. Impreso en México.
DIRECCIÓN ACADÉMICA
Departamento de Desarrollo Curricular
Blvd. Agustín de Vildósola, Sector Sur
Hermosillo, Sonora. México. C.P. 83280
COMISIÓN ELABORADORA:
Elaborador:
Ricardo Revilla Reyes
Revisión Disciplinaria:
María Enedina Duarte Camacho
Corrección de Estilo:
Flora Inés Cabrera Fregoso
Apoyo Metodológico:
María Enedina Duarte Camacho
Supervisión Académica:
Mtra. Luz María Grijalva Díaz
Diseño:
María Jesús Jiménez Duarte
Edición:
Francisco Peralta Varela
Coordinación Técnica:
Claudia Yolanda Lugo Peñúñuri
Diana Irene Valenzuela López
Coordinación General:
Dr. Manuel Valenzuela Valenzuela
Esta publicación se terminó de imprimir durante el mes de junio de 2012.
Diseñada en Dirección Académica del Colegio de Bachilleres del Estado de Sonora
Blvd. Agustín de Vildósola; Sector Sur. Hermosillo, Sonora, México
La edición consta de 1,299 ejemplares.
2
PRELIMINARES
DATOS DEL ALUMNO
Nombre: _______________________________________________________________
Plantel: __________________________________________________________________
Grupo: _________________ Turno: _____________ Teléfono:___________________
E-mail: _________________________________________________________________
Domicilio: ______________________________________________________________
_______________________________________________________________________
Ubicación Curricular
COMPONENTE:
FORMACIÓN PARA EL
TRABAJO
CAPACITACIÓN PARA EL
TRABAJO:
INFORMÁTICA
PRELIMINARES
HORAS SEMANALES:
03
CRÉDITOS:
06
3
4
PRELIMINARES
Índice
Presentación ..................................................................................................................................................................7
Mapa de asignatura .......................................................................................................................................................8
BLOQUE 1: SISTEMAS DE GESTORES DE BASES DE DATOS ......................................................................9
Secuencia Didáctica 1: Introducción a los sistemas de gestión de bases de datos ................................................ 10
•
Concepto de una base de datos ....................................................................................................................... 11
•
Características de las bases de datos ............................................................................................................... 12
•
Redundancia de datos ....................................................................................................................................... 12
•
Concepto de sistemas de gestión de base de datos ....................................................................................... 14
•
Objetivos de los sistemas de gestión de bases de datos ................................................................................ 14
•
Ventajas y/o desventajas ................................................................................................................................... 15
•
Función de los sistemas de gestión de bases de datos (SDGB) ..................................................................... 15
•
Componentes de un sistema de gestión de bases de datos ........................................................................... 21
•
Ejemplos de sistemas de gestión de bases de datos ...................................................................................... 22
Secuencia Didáctica 2: Estructura y diseño de archivos ........................................................................................... 26
•
Organización básica de un sistema de gestión de archivo .............................................................................. 27
•
Estructura del sistema de archivos .................................................................................................................... 30
•
Métodos para la organización de los archivos .................................................................................................. 31
•
Pilas .................................................................................................................................................................... 31
•
Archivo secuencial ............................................................................................................................................. 31
•
Archivo secuencial Indizado (indexado) ............................................................................................................ 33
•
Archivo Indizado (indexado) .............................................................................................................................. 34
•
Fundamentos de los archivos indizados (indexado) ......................................................................................... 34
•
Archivos directos o de dispersión ...................................................................................................................... 34
Secuencia Didáctica 3: Estructura y diseño de bases de datos ............................................................................... 37
•
Introducción a los sistemas de bases de datos ................................................................................................ 38
•
Estructura de una base de datos ....................................................................................................................... 38
•
Diseño de una base de datos ............................................................................................................................ 39
•
Actividades del diseño ....................................................................................................................................... 39
•
Arquitectura de los sistemas de gestión de bases de datos ............................................................................ 41
•
Lenguajes de los sistemas de gestión de bases de datos ............................................................................... 42
•
Lenguajes de definición de datos ...................................................................................................................... 43
•
Lenguajes de manejo de datos ......................................................................................................................... 43
•
Lenguajes de cuarta generación ....................................................................................................................... 44
•
Esquema de una base de datos ........................................................................................................................ 47
•
Modelos de datos .............................................................................................................................................. 47
•
Modelo Entidad-Relación ................................................................................................................................... 48
•
Clasificación de los sistemas de bases de datos ............................................................................................. 52
•
Fundamentos de normalización de una base de datos .................................................................................... 55
BLOQUE 2: UTILIZA VISUAL FOXPRO ............................................................................................................ 61
Secuencia Didáctica 1: Introducción al Visual FoxPro ............................................................................................... 62
•
Introducción al Visual FoxPro ............................................................................................................................. 63
•
Programación orientada a eventos .................................................................................................................... 63
•
Programación orientada a objetos..................................................................................................................... 64
•
Características de la programación orientada a objetos .................................................................................. 64
•
Tipos de generadores ........................................................................................................................................ 66
•
Utiliza los asistentes ........................................................................................................................................... 66
•
Estructura una .DBF ........................................................................................................................................... 66
•
Tipos de campos................................................................................................................................................ 67
•
Modo de operación ............................................................................................................................................ 71
•
Introducción a la interfaz de usuario de Microsoft Visual FoxPro ...................................................................... 71
•
Descripción de los componentes de la ventana ............................................................................................... 74
•
Barra de menú .................................................................................................................................................... 74
•
Operaciones básicas ......................................................................................................................................... 77
Secuencia Didáctica 2: Desarrollo de trabajo en Visual FoxPro ................................................................................ 83
•
Implementación de un proyecto ........................................................................................................................ 84
•
Utiliza la ficha de datos ...................................................................................................................................... 85
PRELIMINARES
5
Índice (continuación)
•
•
•
•
•
•
•
Crea una tabla en Visual FoxPro ........................................................................................................................ 86
Descripción del área mostrar ............................................................................................................................. 89
Definición de reglas de validación a nivel de campo ........................................................................................ 90
Definición de índices .......................................................................................................................................... 90
Utiliza formulario ................................................................................................................................................. 93
Crea informes ..................................................................................................................................................... 97
Utiliza la herramienta consulta ......................................................................................................................... 103
BLOQUE 3: GENERALIDADES DE PROGRAMACIÓN DE BASES DE DATOS .......................................... 111
Secuencia Didáctica 1: Introducción a los lenguajes de programación ................................................................. 112
•
Definición de lenguaje de programación ......................................................................................................... 113
•
Tipos de lenguajes de programación .............................................................................................................. 113
•
Lenguajes de bajo nivel ................................................................................................................................... 113
•
Lenguajes de alto nivel .................................................................................................................................... 113
•
Lenguajes de medio nivel ................................................................................................................................ 114
•
HTML ................................................................................................................................................................ 114
•
Visual FoxPro .................................................................................................................................................... 114
•
Visual Basic ...................................................................................................................................................... 114
•
Visual Studio ..................................................................................................................................................... 116
•
SQL ................................................................................................................................................................... 116
Secuencia Didáctica 2: Operaciones básicas de una base de datos en Microsoft Access................................... 119
•
Introducción a las tablas en Microsoft Access ................................................................................................ 120
•
Cinta de opciones de Microsoft Access .......................................................................................................... 121
•
Ficha crear ........................................................................................................................................................ 121
•
Crear tabla ........................................................................................................................................................ 122
•
Ficha de inicio .................................................................................................................................................. 127
•
Bloque vista ...................................................................................................................................................... 127
•
Vista hoja de datos ........................................................................................................................................... 128
•
Vista tabla dinámica ......................................................................................................................................... 129
•
Vista de diseño ................................................................................................................................................. 129
•
Vista SQL .......................................................................................................................................................... 130
•
Ejecutar un código en vista SQL...................................................................................................................... 131
•
Identifica los requerimientos mínimos de un proyecto ................................................................................... 132
•
Realiza consultas en Access ........................................................................................................................... 132
•
Utiliza el asistente de formularios .................................................................................................................... 137
•
Utiliza el Asistente de informes ........................................................................................................................ 141
Secuencia Didáctica 3: Programación básica en SQL ............................................................................................ 147
•
¿Qué es el SQL? ............................................................................................................................................ 148
•
¿Qué es un ODBC? .......................................................................................................................................... 148
•
Características del lenguaje ............................................................................................................................. 148
•
Tipos de campos ............................................................................................................................................. 149
•
Tipos de datos SQL ......................................................................................................................................... 151
•
Tipos de sentencias y sus componentes sintácticos ...................................................................................... 154
•
Componentes sintácticos ................................................................................................................................ 155
•
Interpretar un diagrama sintáctico ................................................................................................................... 155
•
Código SQL para crear una Tabla ................................................................................................................... 158
•
La cláusula CONSTRAINT ............................................................................................................................... 162
•
Crea índices en SQL ........................................................................................................................................ 165
•
Modifica el diseño de una tabla en SQL .......................................................................................................... 166
•
Introduce registros en una tabla en SQL ......................................................................................................... 168
•
Borrar registros en una tabla en SQL .............................................................................................................. 168
•
Edita registros en una tabla en SQL ................................................................................................................ 169
•
•
•
Realiza selecciones eficientemente ......................................................................................................... 169
Crea el código para consultas básicas en SQL ...................................................................................... 171
Utiliza el código en SQL para actualizar una base de datos .................................................................. 171
Bibliografía........................................................................................................................................................ 173
6
PRELIMINARES
Presentación
“Una competencia es la integración de habilidades, conocimientos y actitudes en un contexto específico”.
El enfoque en competencias considera que los conocimientos por sí mismos no son lo más importante, sino el uso
que se hace de ellos en situaciones específicas de la vida personal, social y profesional. De este modo, las
competencias requieren una base sólida de conocimientos y ciertas habilidades, los cuales se integran para un
mismo propósito en un determinado contexto.
El presente Módulo de Aprendizaje de la asignatura Gestores de Base de Datos, es una herramienta de suma
importancia, que propiciará tu desarrollo como persona visionaria, competente e innovadora, características que se
establecen en los objetivos de la Reforma Integral de Educación Media Superior que actualmente se está
implementando a nivel nacional.
El Módulo de aprendizaje es uno de los apoyos didácticos que el Colegio de Bachilleres te ofrece con la intención de
estar acorde a los nuevos tiempos, a las nuevas políticas educativas, además de lo que demandan los escenarios
local, nacional e internacional; el módulo se encuentra organizado a través de bloques de aprendizaje y secuencias
didácticas. Una secuencia didáctica es un conjunto de actividades, organizadas en tres momentos: Inicio, desarrollo y
cierre. En el inicio desarrollarás actividades que te permitirán identificar y recuperar las experiencias, los saberes, las
preconcepciones y los conocimientos que ya has adquirido a través de tu formación, mismos que te ayudarán a
abordar con facilidad el tema que se presenta en el desarrollo, donde realizarás actividades que introducen nuevos
conocimientos dándote la oportunidad de contextualizarlos en situaciones de la vida cotidiana, con la finalidad de que
tu aprendizaje sea significativo.
Posteriormente se encuentra el momento de cierre de la secuencia didáctica, donde integrarás todos los saberes que
realizaste en las actividades de inicio y desarrollo.
En todas las actividades de los tres momentos se consideran los saberes conceptuales, procedimentales y
actitudinales. De acuerdo a las características y del propósito de las actividades, éstas se desarrollan de forma
individual, binas o equipos.
Para el desarrollo del trabajo deberás utilizar diversos recursos, desde material bibliográfico, videos, investigación de
campo, etc.
La retroalimentación de tus conocimientos es de suma importancia, de ahí que se te invita a participar de forma activa,
de esta forma aclararás dudas o bien fortalecerás lo aprendido; además en este momento, el docente podrá tener una
visión general del logro de los aprendizajes del grupo.
Recuerda que la evaluación en el enfoque en competencias es un proceso continuo, que permite recabar evidencias a
través de tu trabajo, donde se tomarán en cuenta los tres saberes: el conceptual, procedimental y actitudinal con el
propósito de que apoyado por tu maestro mejores el aprendizaje. Es necesario que realices la autoevaluación, este
ejercicio permite que valores tu actuación y reconozcas tus posibilidades, limitaciones y cambios necesarios para
mejorar tu aprendizaje.
Así también, es recomendable la coevaluación, proceso donde de manera conjunta valoran su actuación, con la
finalidad de fomentar la participación, reflexión y crítica ante situaciones de sus aprendizajes, promoviendo las
actitudes de responsabilidad e integración del grupo.
Nuestra sociedad necesita individuos a nivel medio superior con conocimientos, habilidades, actitudes y valores, que
les permitan integrarse y desarrollarse de manera satisfactoria en el mundo social, profesional y laboral. Para que
contribuyas en ello, es indispensable que asumas una nueva visión y actitud en cuanto a tu rol, es decir, de ser
receptor de contenidos, ahora construirás tu propio conocimiento a través de la problematización y contextualización
de los mismos, situación que te permitirá: Aprender a conocer, aprender a hacer, aprender a ser y aprender a vivir
juntos.
PRELIMINARES
7
Gestores de base de datos
Bloque 1.
Bloque 2.
Bloque 3.
Sistemas de Gestores de
Bases de Datos.
Utiliza Visual FoxPro.
Generalidades de
Programación de Bases de
Datos.
Secuencia didáctica 1.
Secuencia didáctica 1.
Secuencia didáctica 1.
Introducción a los sistemas
de gestión de bases de
datos.
Introducción al Visual
FoxPro.
Introducción a los
Lenguajes de
Programación.
Secuencia didáctica 2.
Estructura y diseño de
archivos.
8
Secuencia didáctica 2.
Secuencia didáctica 2.
Desarrollo de trabajo en
Visual FoxPro.
Operaciones básicas de
una base de datos en
Microsoft Access.
Secuencia didáctica 3.
Secuencia didáctica 3.
Estructuras y diseño de
bases de datos.
Programación básica en
SQL.
PRELIMINARES
Sistemas de gestores de bases de datos.
Competencias profesionales:



Desarrolla documentos electrónicos, de acuerdo con los requerimientos establecidos
(software).
Localiza, obtiene información y se comunica utilizando las tecnologías de la información y
de comunicación (software).
Resuelve problemas de procesamiento de información utilizando lenguajes, manejadores
de bases de datos y metodologías, de acuerdo con los requerimientos del usuario
(software).
Unidad de competencia:
Identifica los objetivos y ventajas de la utilización de sistemas de gestión de bases de datos, y
analiza las estructuras de diseño de archivos, para su operación, manejo, desarrollo y
mantenimiento, según los requerimientos de la normalización de una base de datos.
Atributos a desarrollar en el bloque:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Enfrenta las dificultades que se le presentan y es consciente de sus valores, fortalezas y debilidades.
Administra los recursos disponibles teniendo en cuenta las restricciones para el logro de sus metas.
Elige alternativas y cursos de acción con base en criterios sustentados y en el marco de un proyecto
de vida.
Aplica distintas estrategias comunicativas según quienes sean sus interlocutores, el contexto en el
que se encuentra y los objetivos que persigue.
Maneja las tecnologías de la información y la comunicación para obtener información y expresar
ideas.
Sigue instrucciones y procedimientos de manera reflexiva, comprendiendo como cada uno de sus
pasos contribuye al alcance de un objetivo.
Ordena información de acuerdo a categorías, jerarquías y relaciones.
Utiliza las tecnologías de la información y comunicación para procesar e interpretar información.
Elige las fuentes de información más relevantes para un propósito específico y discrimina entre ellas
de acuerdo a su relevancia y confiabilidad.
Estructura ideas y argumentos de manera clara, coherente y sintética.
Define metas y da seguimiento a sus procesos de construcción de conocimiento.
Identifica las actividades que le resultan de menor y mayor interés y dificultad, reconociendo y
controlando sus reacciones frente a retos y obstáculos.
Articula saberes de diversos campos y establece relaciones entre ellos y su vida cotidiana.
Propone maneras de solucionar un problema o desarrollar un proyecto en equipo, definiendo un
curso de acción con pasos específicos.
Aporta puntos de vista con apertura y considera los de otras personas de manera reflexiva.
Asume una actitud constructiva, congruente con los conocimientos y habilidades con los que cuenta
dentro de distintos equipos de trabajo.
Tiempo asignado: 20 horas
Secuencia didáctica 1.
Introducción a los sistemas de
gestión de bases de datos.
Inicio

Actividad: 1
Desarrolla lo que se te pide y, posteriormente, participa en un debate grupal.
1. Escribe el concepto de sistema.
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
2. Menciona cinco empresas, las cuales por sus características manipulan grandes cantidades de información.
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
3. Escribe cinco ventajas que brinda la informática en el almacenamiento y procesamiento de la información.
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
4. ¿Qué es un sistema de información?
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
Actividad: 1
Conceptual
Reconoce el concepto y
ventajas de un sistema de
información.
Autoevaluación
10
Evaluación
Producto: Cuestionario.
Saberes
Procedimental
Puntaje:
Analiza el concepto y ventajas de
un sistema de información.
C
MC
NC
Actitudinal
Participa de una manera activa y
responsable en el desarrollo de la
actividad y el debate grupal.
Calificación otorgada por el
docente
SISTEMAS DE GESTORES DE BASES DE DATOS
Desarrollo
Concepto de base de datos.
Seguro que en más de una ocasión has oído hablar de las
bases de datos, y también de modo intrínseco nos hemos hecho
nuestra propia concepción de lo que son.
Cuando se habla informalmente de una base de datos, se hace
referencia a una colección datos mutuamente relacionados, al
hardware de una computadora que se emplea para almacenarla
y a los programas utilizados para manipularla.
Estos datos representan el conocimiento acerca de una
empresa, como una compañía, una universidad o una institución
gubernamental. Los datos también pueden estar relacionados
debido a que corresponden a cierta área problema; tal vez
acerca de una enfermedad que preocupa al personal de cierto
número de hospitales. Los datos deberán estar organizados de
manera que sea posible procesarlos para obtener información.
Una base de datos es un conjunto de archivos, destinados a almacenar información de manera sistemática, en
campos o delimitadores, teniendo acceso a ella posteriormente tanto en forma separada como conjunta.
El término de bases de datos fue escuchado por primera vez en 1963, en un simposio celebrado en California, USA.
A finales de los años sesenta nacen las bases de datos. En estas se guardan los datos utilizados por los usuarios,
empresas, etc.
Las bases de datos se crearon gracias a la necesidad de las grandes
empresas de almacenar grandes cantidades de información de una forma
rápida, sencilla y 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.
Cuando comenzó el despegue de los programas informáticos se empezaron a
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.
BLOQUE 1
11
Características de las bases de datos.
Entre las principales características de los sistemas de base de
datos podemos mencionar:








Independencia lógica y física de los datos.
Redundancia mínima.
Acceso concurrente por parte de múltiples usuarios.
Integridad de los datos.
Consultas complejas optimizadas.
Seguridad de acceso y auditoría.
Respaldo y recuperación.
Acceso a través de lenguajes de programación estándar.
Redundancia de datos.
En bases de datos o en ficheros, la redundancia hace referencia al almacenamiento de los mismos datos varias veces
en diferentes lugares. La redundancia de datos puede provocar problemas como:



Incremento del trabajo: Como un mismo dato está almacenado en dos o más lugares, esto hace que cuando
se graben o actualicen los datos, deban hacerse en todos los lugares a la vez.
Desperdicio de espacio de almacenamiento: Ya que los mismos datos están almacenados en varios lugares
distintos, ocupando así más bytes del medio de almacenamiento. Este problema es más evidente en grandes
bases de datos.
Inconsistencia de datos: Esto sucede cuando los datos redundantes no son iguales entre sí. Esto puede
suceder, por ejemplo, cuando se actualiza el dato en un lugar, pero el dato duplicado en otro lugar no es
actualizado.
Nota : Si una base de datos está
bien diseñada, no debería haber
redundancia
de
datos
(exceptuando la redundancia de
datos controlada, que se emplea
para mejorar el rendimiento en las
consultas).
12
SISTEMAS DE GESTORES DE BASES DE DATOS
Actividad: 2
En equipo de cinco integrantes realiza la siguiente investigación. Elabora tu reporte de
observaciones para comentarlo con tu profesor.
1.
¿Cuáles son los datos que contiene la tarjeta de circulación de un automóvil?
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
2.
De los datos de la tarjeta de circulación, ¿cuáles piensas que son los más importantes y porque?
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
3.
¿Cuáles de los datos de la tarjeta de circulación se pueden repetir en otra u otras tarjetas de circulación?
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
4.
¿Cuáles son los datos de una tarjeta de circulación que no se pueden repetir en ninguna otra tarjeta de
circulación?
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
5.
Describe un escenario en el cual en un departamento de tránsito vehicular, exista la redundancia de datos.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
BLOQUE 1
13
Conceptual
Evaluación
Producto: Trabajo de Investigación.
Saberes
Procedimental
Reconoce las características de
una base de datos, para evitar la
redundancia.
Evalúa una base de datos para
identificar si existe una redundancia
de datos.
Actividad: 2
Coevaluación
C
MC
NC
Puntaje:
Actitudinal
Colabora con el equipo durante la
investigación.
Calificación otorgada por el
docente
Concepto de sistemas de gestión de base de datos.
Los sistemas de gestión de bases de datos (en inglés database
management system, abreviado DBMS) son un tipo de software
muy específico, dedicado a servir de interfaz entre la base de
datos, el usuario y las aplicaciones que la utilizan.
Objetivos de los sistemas de gestión de base de datos.






14
Abstracción de la información. Los sistemas de gestión
de bases de datos ahorran a los usuarios detalles acerca
del almacenamiento físico de los datos. Da lo mismo si
una base de datos ocupa uno o cientos de archivos, este
hecho se hace transparente al usuario. Así, se definen varios niveles de abstracción.
Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema (físico o
lógico) de una base de datos sin tener que realizar cambios en las aplicaciones que se sirven de ella.
Consistencia. En aquellos casos en los que no se ha logrado eliminar la redundancia, será necesario vigilar
que aquella información que aparece repetida se actualice de forma coherente, es decir, que todos los datos
repetidos se actualicen de forma simultánea. Por otra parte, la base de datos representa una realidad
determinada que tiene determinadas condiciones, por ejemplo que los menores de edad no pueden tener
licencia de conducir. El sistema no debería aceptar datos de un conductor menor de edad. En los sistemas
de gestión de bases de datos existen herramientas que facilitan la programación de este tipo de condiciones.
Seguridad. La información almacenada en una base de datos puede llegar a tener un gran valor. los sistemas
de gestión de bases de datos deben garantizar que esta información se
encuentra segura de permisos a usuarios y grupos de usuarios, que
permiten otorgar diversas categorías de permisos.
Manejo de transacciones. Una transacción es un programa que se ejecuta
como una sola operación. Esto quiere decir que luego de una ejecución
en la que se produce una falla es el mismo que se obtendría si el
programa no se hubiera ejecutado. Los sistemas de gestión de bases de
datos proveen mecanismos para programar las modificaciones de los
datos de una forma mucho más simple que si no se dispusiera de ellos.
Tiempo de respuesta. Lógicamente, es deseable minimizar el tiempo que
el sistema de gestión de bases de datos tarda en darnos la información
solicitada y en almacenar los cambios realizados.
SISTEMAS DE GESTORES DE BASES DE DATOS
Ventajas.
1.
2.
Proveen facilidades para la manipulación de grandes
volúmenes de datos. Entre éstas:
 Simplifican la programación de equipos de
consistencia.
 Manejando las políticas de respaldo adecuadas,
garantizan que los cambios de la base serán siempre
consistentes sin importar si hay errores correctamente,
etc.
 Organizan los datos con un impacto mínimo en el
código de los programas.
 Bajan drásticamente los tiempos de desarrollo y
aumentan la calidad del sistema desarrollado si son
bien explotados por los desarrolladores.
Usualmente, proveen interfaces y lenguajes de consulta que
simplifican la recuperación de los datos.
Desventajas.
1.
2.
3.
4.
5.
Típicamente, es necesario disponer de una o más personas que administren la base de datos, en la misma forma
en que suele ser necesario en instalaciones de cierto porte disponer de una o más personas que administren los
sistemas operativos. Esto puede llegar a incrementar los costos de operación en una empresa. Sin embargo hay
que balancear este aspecto con la calidad y confiabilidad del sistema que se obtiene.
Si se tienen muy pocos datos que son usados por un único usuario por vez y no hay que realizar consultas
complejas sobre los datos, entonces es posible que sea mejor usar una plantilla de cálculo.
Complejidad: Los programas (software) muy complejos y las personas que vayan a usarlo deben tener
conocimiento de las funcionalidades del mismo para poder aprovecharlo al máximo.
Tamaño: la complejidad y la gran cantidad de funciones que tienen hacen que sea un software de gran tamaño,
que requiere de gran cantidad de memoria para poder correr.
Costo del hardware adicional: los requisitos de hardware para correr un sistema de gestión de bases de datos por
lo general son relativamente altos, por lo que estos equipos pueden llegar a costar gran cantidad de dinero.
Función de los sistemas de gestión de bases de datos (SDGB).
Edgar Frank Codd, el creador del modelo relacional, ha establecido una lista con los ocho servicios que debe ofrecer
todo sistema de gestión de base de datos.
1.
2.
BLOQUE 1
Debe proporcionar a los usuarios la capacidad de almacenar datos,
acceder a ellos y actualizarlos. Esta es la función fundamental de un
sistema de gestión de bases de datos y por supuesto ocultar al usuario la
estructura física interna (la organización de los ficheros y las estructuras
de almacenamiento).
Proporciona un catálogo en el que se almacenen las descripciones de los
datos y que sea accesible por los usuarios. Este catálogo es lo que se
denomina diccionario de datos y contiene información que describe los
datos (metadatos). Normalmente, un diccionario de datos almacena:
 Nombre, tipo y tamaño de los datos.
 Nombre de las relaciones entre los datos.
 Restricciones de integridad sobre los datos.
 Nombre de los usuarios autorizados a acceder a la base de datos.
 Esquemas externos, conceptuales e internos, y correspondencia
entre los esquemas.
 Estadísticas de utilización, tales como la frecuencia de las
transacciones y el número de accesos realizados a los objetos de la
base de datos.
15
Beneficios que reporta el diccionario de datos:









La información sobre los datos se puede
almacenar de un modo centralizado. Esto
ayuda a mantener el control sobre los datos,
como un recurso que son.
El significado de los datos se puede definir, lo
que ayudará a los usuarios a entender el
propósito de los mismos.
La comunicación se simplifica ya que se
almacena el significado exacto. El diccionario
de datos también puede identificar al usuario
o usuarios que poseen los datos o que los
acceden.
Las redundancias y las inconsistencias se
pueden identificar más fácilmente ya que los
datos están centralizados.
Se puede tener un historial de los cambios
realizados sobre la base de datos.
El impacto que puede producir un cambio se
puede determinar antes de que sea implementado, ya que el diccionario de datos mantiene información
sobre cada tipo de dato, todas sus relaciones y todos sus usuarios.
Se puede hacer respetar la seguridad.
Se puede garantizar la integridad.
Se puede proporcionar información para auditorías.
3.
Debe permitir un mecanismo que garantice todas las actualizaciones correspondientes a una determinada
transacción se realicen, o que no se realice ninguna. Una transacción es un conjunto de acciones que cambian el
contenido de la base de datos. Una transacción en el sistema informático de la empresa inmobiliaria sería dar de
alta a un empleado o eliminar un inmueble. Una transacción un poco más complicada sería eliminar un empleado
y reasignar sus inmuebles a otro empleado. En este caso hay que realizar varios cambios sobre la base de datos.
Si la transacción falla durante su realización, por ejemplo porque falla el hardware, la base de datos quedará en
un estado inconsistente. Algunos de los cambios se habrán hecho y otros no, por lo tanto, los cambios realizados
deberán ser deshechos para devolver la base de datos a un estado consistente.
4.
Un sistema de gestión de base de datos, debe proporcionar un mecanismo que asegure que la base de datos se
actualice correctamente cuando varios usuarios la están actualizando concurrentemente. Uno de los principales
objetivos de los sistemas de gestión es el permitir que varios usuarios tengan acceso concurrente a los datos que
comparten. El acceso concurrente es relativamente fácil
de gestionar si todos los usuarios se dedican a leer
datos, ya que no pueden interferir unos con otros. Sin
embargo, cuando dos o más usuarios están
accediendo a la base de datos y al menos uno de ellos
está actualizando datos, pueden interferir de modo que
se produzcan inconsistencias en la base de datos. el
sistema de gestión de bases de datos se debe
encargar de que estas interferencias no se produzcan
en el acceso simultáneo.
16
SISTEMAS DE GESTORES DE BASES DE DATOS
5. Proporciona un mecanismo capaz de recuperar la base de
datos en caso de que ocurra algún suceso que la dañe.
Como se ha comentado antes, cuando el sistema falla en
medio de una transacción, la base de datos se debe devolver
a un estado consistente. Este fallo puede ser a causa de
algún dispositivo hardware o un error del software, que hagan
que el sistema de gestión de bases de datos aborte, o puede
ser a causa de que el usuario detecte un error durante la
transacción y la aborte antes de que finalice. En todos estos
casos, el sistema de gestión de bases de datos debe
proporcionar un mecanismo capaz de recuperar la base de
datos llevándola a un estado consistente.
6. Un sistema de gestión de base de datos, debe proporcionar
un mecanismo que garantice que sólo los usuarios
autorizados pueden acceder a la base de datos. La protección debe ser contra accesos no autorizados, tanto
intencionados como accidentales.
7. Debe ser capaz de integrarse con algún software de comunicación. Muchos usuarios acceden a la base de datos
desde terminales. En ocasiones estos terminales se
encuentran conectados directamente a la máquina
sobre la que funciona el sistema de gestión de bases
de datos. En otras ocasiones los terminales están en
lugares remotos, por lo que la comunicación con la
máquina que alberga al sistema de gestión de bases
de datos se debe hacer a través de una red. En
cualquiera de los dos casos, el sistema de gestión
recibe peticiones en forma de mensajes y responde de
modo similar. Todas estas transmisiones de mensajes
las maneja el gestor de comunicaciones de datos.
8. Un sistema de gestión de bases de datos debe proporcionar los medios necesarios para garantizar que tanto los
datos de la base de datos, como los cambios que se realizan sobre estos datos, sigan ciertas reglas. La
integridad de la base de datos requiere la validez y consistencia de los datos almacenados. Se puede considerar
como otro modo de proteger la base de datos, pero además de tener que ver con la seguridad, tiene otras
implicaciones. La integridad se ocupa de la calidad de los datos. Normalmente se expresa mediante
restricciones, que son una serie de reglas que la base de datos no puede violar. Por ejemplo, se puede
establecer la restricción de que cada empleado no puede tener asignados más de diez inmuebles. En este caso
sería deseable que el sistema de gestión de bases de datos controlara que no se sobrepase este límite cada vez
que se asigne un inmueble a un empleado.
Además, de estas ocho funciones, es razonable esperar que los sistemas de gestión de bases de datos proporcionen
un par de servicios más:
1.
Un sistema de gestión de bases de datos debe permitir que se mantenga la independencia entre los programas y
la estructura de la base de datos. La independencia de datos se alcanza mediante las vistas o subesquemas. La
independencia de datos física es más fácil de alcanzar, de hecho hay varios tipos de cambios que se pueden
realizar sobre la estructura física de la base de datos sin afectar a las vistas. Sin embargo, lograr una completa
independencia de datos lógica es más difícil. Añadir una nueva entidad, un atributo o una relación puede ser
sencillo, pero no es tan sencillo eliminarlos.
BLOQUE 1
17
2.
Un sistema de gestión de bases de datos debe
proporcionar una serie de herramientas que
permitan administrar la base de datos de modo
efectivo. Algunas herramientas trabajan a nivel
externo, por lo que habrán sido producidas por el
administrador de la base de datos. Las herramientas
que trabajan a nivel interno deben ser
proporcionadas por el distribuidor del sistema de
gestión de bases de datos. Algunas de ellas son:
 Para importar y exportar datos.
 Monitorizar el uso y el funcionamiento de la
base de datos.
 Programas de análisis estadístico para
examinar las prestaciones o las estadísticas de
utilización.
 Reorganización de índices.
 Para aprovechar el espacio dejado en el
almacenamiento físico por los registros
borrados y que consoliden el espacio liberado
para reutilizarlo cuando sea necesario.
Actividad: 3
En binas completa, las siguientes tablas y posteriormente participa en un debate grupal.
Concepto de
Sistema de
gestión de base
de datos.
Escribe aquí el concepto.
Abstracción de la información.
Objetivos de los
sistemas de
gestión de base
de datos.
Descripción de los objetivos.
Independencia.
Consistencia.
Seguridad.
Manejo de transacciones.
Manejo de transacciones.
18
SISTEMAS DE GESTORES DE BASES DE DATOS
Actividad: 3 (continuación)
Completa la siguiente tabla sobre las ventajas y desventajas de un sistema de gestión de
bases de datos.
Sistemas de gestión de bases de datos
Ventajas
Actividad: 3
Conceptual
Clasifica los objetivos, ventajas y
desventajas de un sistema de
gestión de bases de datos.
Coevaluación
BLOQUE 1
Desventajas
Evaluación
Producto: Tablas.
Saberes
Procedimental
Puntaje:
Actitudinal
Interpreta los objetivos, las ventajas
y desventajas de un sistema de
gestión de bases de datos.
C
MC
NC
Realiza las actividades del bloque
de forma ordenada.
Calificación otorgada por el
docente
19
Actividad: 4
Elabora un diagrama sobre las funciones de los sistemas de gestión de bases de datos
(SDGB), posteriormente coméntalo con tus compañeros.
Actividad: 4
Conceptual
Identifica las funciones de los
sistemas de gestión de bases
de datos.
Autoevaluación
20
Evaluación
Producto: Diagrama.
Saberes
Procedimental
Puntaje:
Actitudinal
Plasma en un diagrama las
funciones de un sistema de gestión
de base de datos.
C
MC
NC
Muestra una actitud positiva en el
desarrollo de la actividad.
Calificación otorgada por el
docente
SISTEMAS DE GESTORES DE BASES DE DATOS
Componentes de un sistema de gestión de bases de datos.
Los sistemas de gestión de base de datos son paquetes de
programas muy complejos y sofisticados, formado por varios
módulos los cuales llevan a cabo una función específica.


El procesador de consultas es el componente principal
en la gestión de bases de datos. Transforma las
consultas en un conjunto de instrucciones de bajo nivel
que se dirigen al gestor de la base de datos.
El gestor de la base de datos es la interface con los
programas de aplicación y las consultas de los usuarios.
Acepta consultas y examina los esquemas externo y
conceptual para determinar qué registros se requieren
para satisfacer la petición. Entonces el gestor de la base
de datos realiza una llamada al gestor de ficheros para
ejecutar la petición.




El gestor de ficheros maneja los ficheros en disco en
donde se almacena la base de datos. Este gestor
establece y mantiene la lista de estructuras e índices
definidos en el esquema interno. Si se utilizan ficheros
dispersos, llama a la función de dispersión para generar
la dirección de los registros. Pero el gestor de ficheros
no realiza directamente la entrada y salida de datos. Lo
que hace es pasar la petición a los métodos de acceso
del sistema operativo que se encargan de leer o escribir
los datos en el buffer del sistema.
El preprocesador del LMD convierte las sentencias del LMD embebidas en los programas de aplicación, en
llamadas a funciones estándar escritas en el lenguaje anfitrión. El preprocesador del LMD debe trabajar con el
procesador de consultas para generar el código apropiado.
El compilador del LDD (Lenguaje de Definición de Datos) convierte las sentencias del LDD en un conjunto de
tablas que contienen metadatos. Estas tablas se almacenan en el diccionario de datos.
El gestor del diccionario controla los accesos al diccionario de datos y se encarga de mantenerlo. La mayoría de
los componentes del sistema de gestión de bases de datos acceden al diccionario de datos.
Principales componentes del gestor de la base de datos:






Control de autorización. Este módulo comprueba que el usuario tiene los
permisos necesarios para llevar a cabo la operación que solicita.
Procesador de comandos. Una vez que el sistema ha comprobado los permisos
del usuario, se pasa el control al procesador de comandos.
Control de la integridad. Cuando una operación cambia los datos de la base de
datos, este módulo debe comprobar que la operación a realizar satisface todas
las restricciones de integridad necesarias.
Optimizador de consultas. Este módulo determina la estrategia óptima para la
ejecución de las consultas.
Gestor de transacciones. Este módulo realiza el procesamiento de las
transacciones.
Planificador (scheduler). Este módulo es el responsable de asegurar que las
operaciones que se realizan concurrentemente sobre la base de datos tienen
lugar sin conflictos.
BLOQUE 1
LMD: Un lenguaje de
manipulación de datos (Data
Manipulation Language, o
DML en inglés) es un
lenguaje proporcionado por
el sistema de gestión de
base de datos que permite a
los usuarios de la misma
llevar a cabo las tareas de
consulta o manipulación de
los datos, organizados por el
modelo de datos adecuado.
21

Gestor de recuperación. Este módulo garantiza que la
base de datos permanece en un estado consistente en
caso de que se produzca algún fallo.

Gestor de buffers. Este módulo es el responsable de
transferir los datos entre memoria principal y los
dispositivos de almacenamiento secundario. A este
módulo también se le denomina gestor de datos.
Ejemplos de sistemas de gestión de bases de datos.

Libres:






No Libres:










22
PostgreSQL, licencia BSD.
Firebrid basada en la versión 6 de Interbase, Initial Developer's PUBLIC LICENSE Version 1.0.
SQLite, licencia de dominio público
DB2 Express-C.
Apache Derby.
Licencia Dual, depende el uso (no se sabe hasta cuándo, ya que la compró Oracle).
o Sin embargo, existen 2 versiones: una gratuita que sería equivalente a la edición
"express" SQL server de Microsoft Windows y otra más completa de pago, ese
pago se haría en la licencia de ella ya que permitiría usarse en otras
distribuciones sin usar la licencia GNU.
Advantage Database
DBase
FileMaker
Fox Pro
IBM DB2 Universal Database (DB2 UDB)
IBM Informix
Interbase de CodeGear, filial de Borland
MAGIC
Microsoft Access
SISTEMAS DE GESTORES DE BASES DE DATOS













Microsoft SQL Server
NexusDB.
Open Access.
Oracle.
Paradox.
PervasiveSQL.
Progress (DBMS).
Sybase ASE.
Sybase ASA.
Sybase IQ.
WindowBase.
IBM IMS Base de Datos Jerárquica.
CA-IDMS.
Actividad: 5
En binas completa las siguientes tablas y posteriormente participa en un debate grupal.
1) En la siguiente tabla, menciona las funciones de los módulos de los sistemas de gestión de
bases de datos.
Módulos
Función
Procesador de
consultas.
Gestor de la base de
datos.
Gestor de ficheros.
Preprocesador del
LMD.
Compilador del LDD.
Gestor del diccionario.
BLOQUE 1
23
Actividad: 5 (continuación)
2) En la siguiente tabla, menciona la descripción de los principales componentes de un sistema
de gestión de bases de datos.
Componentes
Descripción
Control de
autorización.
Procesador de
Comandos.
Control de la
integridad.
Optimizador de
consultas.
Gestor de
transacciones.
Planificador
(scheduler).
Gestor de
recuperación.
Gestor de buffers.
Actividad: 5
Conceptual
Identifica los módulos y
componentes de un sistema de
gestión de bases de datos.
Coevaluación
24
Evaluación
Producto: Tablas.
Puntaje:
Saberes
Procedimental
Actitudinal
Diferencia un módulo de un
Participa activamente en el
componente de un sistema de
debate.
gestión de bases de datos.
C
MC
NC
Calificación otorgada por el
docente
SISTEMAS DE GESTORES DE BASES DE DATOS
Cierre
Actividad: 6
Desarrolla lo que se te pide y posteriormente participa en un debate grupal.
1) Escribe el concepto de base de datos.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
2) ¿Qué es un sistema de gestión de bases de datos?
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
3) Además de las ocho funciones de un sistema de gestión de bases de datos, describe los dos servicios
adicionales que proporciona SGBD.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
4) Menciona tres sistemas de gestión de bases de datos libres, no libres y, no libres y gratuitos.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
Actividad: 6
Conceptual
Reconoce el concepto de base
de datos y sistemas de gestión
de bases de datos.
Autoevaluación
BLOQUE 1
Evaluación
Producto: Cuestionario.
Puntaje:
Saberes
Procedimental
Actitudinal
Distingue los dos servicios
Está atento a la participación de
adicionales de un sistema de
sus compañeros durante el
gestión de bases de datos.
debate grupal.
C
MC
NC
Calificación otorgada por el
docente
25
Secuencia didáctica 2.
Estructura y diseño de archivos.
Inicio

Actividad: 1
Desarrolla lo que se te pide y posteriormente participa en un debate grupal.
1) Escribe el concepto de una base de datos.
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
2) En la estructura de una base de datos, ¿Qué es un campo?
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
3) ¿Define qué es un registro?
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
Actividad: 1
Conceptual
Reconoce el concepto de base
de datos
Autoevaluación
26
Evaluación
Producto: Cuestionario.
Saberes
Procedimental
Puntaje:
Actitudinal
Analiza los conceptos básicos de
una base de datos.
C
MC
NC
Está atento a la participación de
sus compañeros durante el
debate grupal.
Calificación otorgada por el
docente
SISTEMAS DE GESTORES DE BASES DE DATOS
Desarrollo
Organización básica de un sistema de gestión de archivos.
Antes de comenzar a hablar de lo que es un Sistema de Gestión de Archivos sería
conveniente aclarar que es un archivo y cuáles son sus utilidades:
Cuando hablamos de archivos, habitualmente se utilizan cuatro términos: Campo,
Registro, Archivo y Base de datos. Se puede decir que estos términos forman una
estructura de datos agrupados y relacionados de alguna manera en particular
donde uno contiene al otro y que nos facilitan la manera de almacenarlos y
recuperarlos.
Un Campo es el elemento de datos básico, como ejemplo: un campo
individual contiene un valor único, como el apellido de un empleado, una
fecha o un valor leído por un sensor. Lo más importante de un campo es su
longitud (que puede ser fija o variable) y el tipo de datos que contenga (ya
sea una cadena ASCII o un dígito decimal).
Un Registro es un conjunto de campos relacionados que pueden tratarse como una unidad por algunos
programas de aplicación. Por ejemplo: un registro de nombre “empleado” contendría campos tales como
nombre, DNI, fecha de contratación, etc. Un registro puede ser de longitud variable en el caso de que el
número de campos pueda variar, esto dependerá de su diseño.
Un Archivo es un conjunto de registros similares. Los usuarios y las aplicaciones se refieren a él por un
nombre que es único y que puede crearse y borrarse. Las
restricciones al control de acceso suelen aplicarse a los archivos.
Es decir en un sistema compartido, el acceso de los usuarios y los
programas se garantiza o deniega a archivos completos, en otros
casos se aplica a los registros e incluso a los campos.
Una Base de datos es un conjunto de datos relacionados. El
aspecto fundamental es que está diseñada para ser usada por
varias aplicaciones diferentes. Puede contener toda la información
relativa a una organización o proyecto.




Un Sistema de Gestión de Archivos es el software del sistema que proporciona
servicios a usuarios y aplicaciones para el uso de archivos. Normalmente la
única forma en que un usuario o aplicación puede acceder a los archivos es
mediante el sistema de gestión de archivos.
Los objetivos para un sistema de gestión de archivos son:





BLOQUE 1
Cumplir con las necesidades de
gestión de datos y con los
requerimientos del usuario.
Garantizar que los datos de los archivos sean válidos.
Optimizar el rendimiento en términos de productividad y tiempo de
respuesta.
Ofrecer soporte de E/S para los distintos dispositivos de
almacenamiento.
Minimizar o eliminar la posibilidad de pérdida o destrucción de datos.
27
Con respecto al primer punto. Para un sistema interactivo, de propósito general, deben cumplirse los siguientes
requisitos mínimos:
1. Cada usuario debe ser capaz de crear, borrar, y cambiar los archivos.
2. Puede tener acceso controlado a los archivos de otros usuarios.
3. Puede controlar qué tipos de acceso estarán permitidos a sus archivos.
4. Debe poder reestructurar sus archivos de manera adecuada al problema.
5. Ser capaz de mover datos entre los archivos.
6. Ser capaz de guardar una copia de reserva y recuperar sus archivos en el caso de que hayan sufrido
algún daño.
7. Ser capaz de acceder a sus archivos mediante un nombre simbólico.
Estos objetivos y requerimientos deben tenerse en cuenta en todo el estudio de los sistemas de gestión de archivos.
Las características básicas convenientes para los sistemas que almacenan grandes cantidades de datos son el
rápido acceso para la recuperación, la actualización conveniente y la economía de almacenamiento. La capacidad
para representar estructuras de información del mundo real, la confiabilidad, la protección de la privacidad y el
mantenimiento de la integridad son importantes criterios
secundarios. El diseño de bases de datos requiere un
análisis para la predicción del desempeño, y esto a su vez
requiere que la organización de archivo pueda
abastecerse fácilmente. Todos estos criterios tienden a
entrar en conflicto entre sí. La elección del método de
organización de archivo determina la adecuación relativa
de un sistema según estos criterios. Inicialmente se
evaluaran los archivos de acuerdo con los criterios
básicos. Para el éxito del sistema resultante es vital que las
capacidades proporcionadas por el sistema de archivo
estén de acuerdo con las prioridades asignadas a los
criterios, según lo determines los objetivos para la base de
datos.
28
SISTEMAS DE GESTORES DE BASES DE DATOS
Actividad: 2
Completa las siguientes tablas y posteriormente participa en un debate grupal.
1) En la siguiente tabla define cada uno de los conceptos.
Definición
Campo
Registro
Archivo
Base de datos
2) En la siguiente tabla escribe los requisitos mínimos para un sistema interactivo y de propósito general.
Requisitos para un sistema interactivo de propósito general.
1
2
3
4
5
6
7
Actividad: 2
Conceptual
Reconoce el concepto de
registro, campo, archivo y base
de datos.
Autoevaluación
BLOQUE 1
Evaluación
Producto: Cuestionario.
Puntaje:
Saberes
Procedimental
Actitudinal
Analiza mediante el debate grupal
Atiende las indicaciones del
los requisitos para un sistema
docente para el llenado de las
interactivo de propósito general.
tablas.
C
MC
NC
Calificación otorgada por el
docente
29
Estructura del sistema de archivos.
El proporcionar una estructura de sistema de archivos común asegura que los usuarios y
programas pueden acceder y escribir a los archivos.
Los sistemas de archivos dividen en dos categorías lógicas:


Archivos compartibles vs. no compartibles.
Archivos variables vs. Estáticos.
Los archivos compartibles son aquéllos a los que se puede acceder desde varios hosts;
mientras que los archivos no compartibles sólo están disponibles localmente. Los archivos variables, tales como
documentos, pueden cambiar en cualquier momento; los archivos estáticos, tales como binarios, no cambian sin una
actuación por parte del administrador de sistemas.
Organización de los archivos
Los archivos se encuentran organizados lógicamente como una
secuencia de registros de varias longitudes diferentes.
 Los archivos de registros de longitud fija: Son los que
almacenan la información en los archivos mediante un
encabezado y luego se introducen uno a uno los registros
ubicados en posiciones consecutivas.
 Los registros de longitud variable: Es el almacenamiento de
registros de varios tipos en un archivo y permite uno o más
campos de longitudes variables y dichos campos pueden ser
repetidos. La longitud de los registros debe estar definida
correctamente para poder leer y escribir de forma efectiva.
Enfoques generales para la organización de archivos


30
Enfoque de acceso secuencial: Se refiere al
procesamiento de los archivos de acuerdo con el
orden específico. Ejemplo archivo secuenciales y
de texto.
Enfoque de acceso Directo Permite recuperar
registros individuales sin leer otros registros del
archivo, ejemplos archivos indizados (indexados).
SISTEMAS DE GESTORES DE BASES DE DATOS
Métodos para la organización de archivos.
Pilas.
Este método rara vez resulta práctico, pero proporciona una base para la evaluación de métodos más estructurados.
Los datos en un apilo se colectan en el orden en que llegan. No se analizan, categorizan o forzan para que coincidan
con las definiciones de campo o los tamaños de campo. En el mejor de los casos el orden de los registros puede ser
cronológico. Los registros pueden ser de longitud variable y no necesariamente tienen conjuntos semejantes de
elementos dato.
Sin embargo, es necesario cumplir con algunas restricciones a fin de permitir el
procesamiento de los datos para extraer la información. Un registro debe consistir
en elementos dato relacionados y cada valor dato debe tener una identificación
de sus significado. Esta puede ser un nombre explicito, un código o una posición
que indique su tipo de atributo, tal como la altura, peso, matricula, etc.
Características:
a)
Es la forma más fácil de organizar un archivo. Los datos se recogen en el
orden en que llegan.
b) Su objetivo es simplemente acumular una masa de datos y guardarla.
c) Los registros pueden tener campos diferentes o similares en un orden
distinto. Cada campo debe ser auto descriptivo, incluyendo tanto un campo
de nombre como el valor. La longitud de cada campo debe indicarse
implícitamente con delimitadores, explícitamente incluidos como un
subcampo más.
d) El acceso a los registros se hace por búsquedas exhaustiva y son fáciles de actualizar. Si se quiere encontrar un
registro que contiene un campo particular y un valor determinado, es necesario examinar cada registro de la pila
hasta encontrar el registro deseado. Si se quieren encontrar todos los registros que contienen un campo particular
o que tienen un valor determinado para ese campo, debe buscarse el archivo entero.
e) Se aplica cuando los datos se recogen o almacenan antes de procesarlos o cuando no son fáciles de organizar.
Esta clase de archivo aprovecha bien el espacio cuando los datos almacenados varían en tamaño y estructura.
Fuera de estos usos limitados, este tipo de archivos no se adapta a la mayoría de las aplicaciones.
Archivo secuencial.
Este método proporciona dos cambios estructurales diferentes en relación con la
organización de apilo. La primera mejora es que los registros dato se ordenan en una
secuencia específica y la segunda es que los atributos de los datos se clasifican por
categorías, de manera que los registros individuales contienen todos los valores de
atributos de los datos en el mismo orden y posiblemente en la misma posición. Entonces,
los nombres de los atributos de los datos necesitan aparecer solo una vez en la
descripción del archivo. En vez de almacena pares de nombre de atributo-valor se asocia
a cada nombre un conjunto completo de valores, al que se denomina columna.
Ejemplo de archivo
secuencial
Con el fin de proporcionar una secuencia para los registros, se define una llave para cada
uno. Uno o más atributos se volverán los atributos llave para los registros en el archivo. El
conjunto de valores para los atributos llave comúnmente identifica el objeto descrito por el registro; es decir, el número
de placa de un automóvil o el nombre de una persona. Se espera poder identificar los registros en forma única con
base en sus llaves. Entonces, los registros en el archivo se conservan en orden de acuerdo con los atributos llave. Un
atributo llave proporcionará la llave primaria de clasificación de alto orden, y si este atributo no identifica en forma
única al objeto, entonces pueden especificarse atributos llaves secundarios o inferiores hasta que el orden se
determine por completo.
BLOQUE 1
31
Los registros son escritos consecutivamente cuando el archivo es creado, por lo tanto, los registros son físicamente
almacenados en su orden lógico secuencial y podrán ser accesados consecutivamente cuando el archivo sea usado
posteriormente como entrada.
En esta técnica de organización de archivos el proceso secuencial y el proceso en serie son expresiones sinónimas ya
que los registros se alojan en el archivo en secuencia y en serie.
La característica más importante de este tipo de archivos es que solo
permite el acceso secuencial. Esta característica impide que el archivo
secuencial sea usado en procesos en línea o interactivos debido a que no
se puede accesar rápidamente a un registro, restringiéndose su aplicación
a los procesos en lote, donde
se aprovecha la habilidad de la
técnica
secuencial
de
organización de archivos para
accesar al siguiente registró
rápidamente.
Es la forma básica de organizar un conjunto de registros, que forman un
archivo, utilizando una organización secuencial. En un archivo organizado
secuencialmente, lo registros quedan grabados consecutivamente
cuando el archivo se utiliza como entrada.
En la mayoría de los casos, los registros de un archivo secuencial quedan
ordenados de acuerdo con el valor de algún campo de cada registro.
Semejante archivo se dice que es un archivo ordenado; el campo, o los
campos, cuyo valor se utiliza para determinar el ordenamiento es conocido como la llave del ordenamiento.
Un archivo puede ordenarse ascendente o descendentemente con base en su llave de ordenamiento.
Características:
a) Es la forma más común de estructura de archivos.
b) Se emplea un formato fijo para los registros, son de la misma longitud y constan del mismo número de
campos de tamaño fijo con un orden determinado.
c) Se necesita almacenar los valores de cada campo; el nombre del campo y la longitud de cada uno son
atributos de la estructura del archivo. Cada registro tiene un campo clave que lo identifica (generalmente es el
primero de cada registro). Los registros se almacenan en secuencia por la clave.
d) Se utilizan normalmente en aplicaciones de procesos por lotes, ya que es la única organización de archivos
que se puede guardar tanto en cintas como en discos.
e) Para las aplicaciones interactivas que incluyen peticiones o
actualizaciones de registros individuales, los archivos secuenciales
no son óptimos. El acceso requiere una búsqueda secuencial de
correspondencias con la clave. Si el archivo entero o gran parte de él
pueden traerse a la memoria principal de una sola vez, se podrán
aplicar técnicas de búsquedas más eficientes. Al acceder un registro
de un archivo secuencial grande, se produce un procesamiento
extra y un retardo considerable.
f) La organización física del archivo en una cinta o disco se
corresponde exactamente con la organización lógica del archivo, por
lo tanto el procedimiento habitual es ubicar los nuevos registros en
un archivo de pila separado, es llamado archivo de registro o archivo
de transacciones.
g) Una alternativa es organizar físicamente el archivo secuencial como una lista enlazada, en cada bloque físico
se almacena uno o más registros y cada bloque del disco contiene un puntero al bloque siguiente. La
inserción de un nuevo registro implica la manipulación de puntero, pero no requiere que el nuevo registro
ocupe una posición particular del bloque físico.
32
SISTEMAS DE GESTORES DE BASES DE DATOS
Archivo secuencial indizado (indexado).
El diseño de archivo secuencial indizado intenta superar el problema de
acceso inherente a la organización de archivo secuencial, sin perder todos
los beneficios de los archivos secuenciales. Para obtener este tercer tipo
de organización de archivos se agregan dos características a la
organización de archivo secuencial. Una característica adicional es un
índice de archivo para proporcionar mejor acceso aleatorio; la otra es un
área de derrama que proporciona un medio de manejar adiciones al
archivo.
Características:
a) Los registros se organizan en una secuencia basada en un campo
clave presentando dos características, un índice del archivo para
soportar los accesos aleatorios y un archivo de desbordamiento. El
índice proporciona una capacidad de búsqueda para llagar
rápidamente al registro deseado y el archivo de desbordamiento es
similar al archivo de registros usado en un archivo secuencial, pero
está integrado de forma que los archivos de desbordamiento se
ubiquen siguiendo un puntero desde su registro predecesor.
b) La estructura más simple tiene como índice un archivo secuencial
simple, cada registro del archivo índice tiene dos campos, un campo
clave igual al del archivo principal y un puntero al archivo principal.
Para encontrar un campo especifico se busca en el índice hasta
encontrar el valor mayor de la clave que es iguale o precede al valor
deseado de la clave, la búsqueda continua en el archivo principal a
partir de la posición que indique el puntero.
c) Cada registro del archivo principal tiene un campo adicional que es un
puntero al archivo de desbordamiento. Cuando se inserta un nuevo
registro al archivo, también se añade al archivo de desbordamiento. El
registro del archivo principal que precede inmediatamente al nuevo
registro según la secuencia lógica se actualiza con un puntero del
registro nuevo en el archivo de desbordamiento, si el registro
inmediatamente anterior está también en el archivo de
desbordamiento se actualizará el puntero en el registro.
d) Para procesar secuencialmente un archivo completo, los registros del
archivo principal se procesarán en secuencia hasta encontrar un
puntero al archivo de desbordamiento, el acceso continúa en el
archivo de desbordamiento hasta que encuentra un puntero nulo,
entonces renueva el acceso donde se abandonó en el archivo principal.
BLOQUE 1
33
Archivo indizado (indexado).
Es la aplicación de incluir índices en el almacenamiento de los archivos; de esta forma nos será más fácil buscar
algún registro sin necesidad de ver todo el archivo.
Un índice en un archivo consiste en un listado de los valores del campo clave que ocurren en el archivo, junto con la
posición de registro correspondiente en el almacenamiento masivo.
Características:
a) Explotan la capacidad de los discos para acceder directamente a cualquier bloque de dirección conocida.
b) Se requiere un campo clave en cada registro.
c) Los archivos directos son muy usados donde se necesita un acceso muy rápido, donde se usan registros de
longitud fija y donde siempre se accede a los registros de una vez.
Fundamentos de archivos indizados (indexados).




La colocación de un listado al inicio del archivo: para la identificación del contenido.
La presentación de un segundo índice: para reflejar la información de cada punto principal del índice anterior.
La actualización de los índices: Cuando se insertan y eliminan archivos, es preciso actualizar los índices para
evitar contratiempos actualizando un archivo.
La organización de un índice: Nos evita examinar archivo por archivo para recuperar algún registro buscado;
por lo tanto ahorraríamos tiempo si tenemos una adecuado organización de los índices.
Algunos lenguajes de alto nivel cuentan con subtítulos para
manipular los archivos de un registro indizado.
Valiéndose de las subrutinas es posible escribir programas sin
tener que preocuparse por la estructura real del sistema de
índices que se aplique.
Archivos directos o de dispersión.



34
Explotan la capacidad de los discos para acceder directamente a cualquier bloque de dirección conocida.
Se requiere un campo clave en cada registro.
Los archivos directos son muy usados donde se necesita un acceso muy rápido, donde se usan registros de
longitud fija y donde siempre se accede a los registros de una vez.
SISTEMAS DE GESTORES DE BASES DE DATOS
Actividad: 3
En binas desarrolla lo que a continuación se te solicita y participa en un debate grupal.
1) Completa la siguiente tabla, sobre los métodos para la organización de archivos.
Descripción
Características
Pilas
Secuenciales
Secuenciales indizados
(indexados)
Evaluación
Actividad: x
Producto:
Conceptual
Indizados (indexados)
Autoevaluación
Puntaje:
Saberes
Procedimental
C
MC
NC
Actitudinal
Calificación otorgada por el
docente
Directos o de dispersión.
Actividad: 3
Conceptual
Identifica los métodos para la
organización de archivos.
Coevaluación
BLOQUE 1
Evaluación
Producto: Tablas.
Saberes
Procedimental
Puntaje:
Analiza los diferentes métodos para
la organización de archivos.
C
MC
NC
Actitudinal
Muestra interés en la realización
de la actividad y respeto a sus
compañeros durante el debate
grupal.
Calificación otorgada por el
docente
35
Cierre
Actividad: 4
Desarrolla lo que se te solicita y posteriormente participa en un debate grupal.
1)
Menciona dos categorías lógicas en las cuales se dividen los sistemas de archivos.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
2) Escribe la descripción de los archivos de longitud fija.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
3) ¿Qué son los archivos de longitud variable?
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
4) ¿A qué se refiere el enfoque secuencial?
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
5) ¿Cuál es la ventaja del enfoque directo a un archivo?
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
Actividad: 4
Conceptual
Identifica los conceptos básicos
de los sistemas de archivos.
Autoevaluación
36
Evaluación
Producto: Cuestionario.
Saberes
Procedimental
Puntaje:
Actitudinal
Contrasta el acceso a un archivo
mediante el enfoque secuencial
con el enfoque directo.
C
MC
NC
Atiende las indicaciones del
docente, al realizar la actividad.
Calificación otorgada por el
docente
SISTEMAS DE GESTORES DE BASES DE DATOS
Secuencia didáctica 3.
Estructura y diseño de bases de datos.
Inicio

Actividad: 1
Desarrolla lo que se te solicita y posteriormente participa en un debate grupal.
1) Menciona cinco campos, que se utilizan durante la inscripción de los alumnos del Cobach.
A. ____________________________
B. ____________________________
C. ____________________________
D. ____________________________
E. ____________________________
2) Elabora la estructura de la siguiente base de datos “Control de Alumnos de una Escuela”. Utiliza los campos
descritos en el punto anterior. Agrega cinco registros.
Actividad: 1
Conceptual
Reconoce la estructura de una
base de datos.
Autoevaluación
BLOQUE 1
Evaluación
Producto: Ejercicio.
Saberes
Procedimental
Puntaje:
Actitudinal
Identifica los componentes de una
base de datos en la práctica.
C
MC
NC
Atiende las indicaciones del
docente, al realizar la actividad.
Calificación otorgada por el
docente
37
Desarrollo
Introducción a los sistemas de base de datos.
Un sistema de base de datos es la
combinación de programas y archivos, que
se utilizan conjuntamente.
Estructura de una base de datos.
La estructura de una base de datos hace referencia a los tipos de datos, los vínculos o relaciones y las restricciones
que deben cumplir esos datos (integridad de datos y redundancia de datos).
Un ejemplo a modo de descripción de la estructura de
una base de datos puede ser:
38

ALUMNO: Número de alumno (entero de 6 números),
nombre (cadena de 30 caracteres), apellido (cadena
de 30 caracteres), año de nacimiento (entero de 4
números), especialidad (entero de 3 números).

ESPECIALIDAD: Número de especialidad (entero de
3 números), nombre de especialidad (cadena de 30
caracteres).
SISTEMAS DE GESTORES DE BASES DE DATOS
Diseño de una base de datos.
El diseño incluye diferentes modelos y esquemas, como también software de gestión de la misma (sistemas de
gestión de bases de datos).
El diseñador de bases de datos, es la persona que se encarga de identificar los datos que se almacenarán en la base
de datos y elegir las estructuras apropiadas para la misma.
Esta tarea suele realizarse antes de que se implemente y se llene de datos la base de datos, aunque muchas veces
un diseñador debe trabajar sobre la misma cuando ya está en funcionamiento.
El o los diseñadores de bases de datos se encargan de
determinar los requerimientos de los usuarios que usarán la
base de datos.
Actividades del diseño.

Diseño conceptual de bases de datos: Conjunto de
actividades que resultan en un esquema conceptual
de alto nivel de una base de datos, independiente del
software gestor(sistemas de gestión de bases de
datos),
partiendo
de
especificaciones
de
requerimientos.

Diseño lógicos de bases de datos: Parte del
esquema conceptual de una base de datos,
resultando en un esquema lógico el cual es una
descripción de la estructura que puede procesar un
sistema de gestión.

Diseño físico de bases de datos: Es una descripción de la implementación de una base de datos en memoria
secundaria, describiendo las estructuras de almacenamiento y los métodos de acceso a esos datos.
BLOQUE 1
39
Actividad: 2
En equipo de cinco integrantes, realiza la siguiente práctica y posteriormente lleva a
cabo una exposición sobre los resultados obtenidos.
Práctica: Dentro de un contexto escolar, para llevar a cabo el control de los alumno, establece los datos
necesarios que se deben almacenar en su base de datos. Es importante que comentes con tus compañeros de
equipo, que campos vas a utilizar y a continuación elabora un diagrama del diseño de la base de datos, con
tres registros, con sus campos debidamente capturados (Pueden ser datos ficticios).
Actividad: 2
Conceptual
Organiza la información
utilizando una base de datos.
Coevaluación
40
Evaluación
Producto: Práctica.
Saberes
Procedimental
Puntaje:
Diseña una base de datos en un
contexto escolar.
C
MC
NC
Actitudinal
Comparte su opinión con sus
compañeros de equipo con
respecto a la información que se
utilizara en la base de datos.
Calificación otorgada por el
docente
SISTEMAS DE GESTORES DE BASES DE DATOS
Arquitectura de los sistemas de gestión de bases de datos.
Hay tres características importantes inherentes a los sistemas
de bases de datos: la separación entre los programas de
aplicación y los datos, el manejo de múltiples vistas por parte
de los usuarios y el uso de un catálogo para almacenar el
esquema de la base de datos. En 1975, el comité ANSISPARC (American National Standard Institute - Standards
Planning and Requirements Committee) propuso una
arquitectura de tres niveles para los sistemas de bases de
datos, que resulta muy útil a la hora de conseguir estas tres
características.
El objetivo de la arquitectura de tres niveles es el de separar
los programas de aplicación de la base de datos física. En
esta arquitectura, el esquema de una base de datos define
tres niveles de abstracción distintos:
1) En el nivel interno se describe la estructura física de la base de datos mediante un esquema interno. Este
esquema se especifica mediante un modelo físico y describe todos los detalles para el almacenamiento de la
base de datos, así como los métodos de acceso.
2) En el nivel conceptual se describe la estructura de toda la base de datos para una comunidad de usuarios
(todos los de una empresa u organización), mediante un esquema conceptual. Este esquema oculta los
detalles de las estructuras de almacenamiento y se concentra en describir entidades, atributos, relaciones,
operaciones de los usuarios y restricciones. En este nivel se puede utilizar un modelo conceptual o un modelo
lógico para especificar el esquema.
3) En el nivel externo se describen varios esquemas externos o vistas de usuario. Cada esquema externo
describe la parte de la base de datos que interesa a un grupo de usuarios determinados y ocultos a ese
grupo el resto de la base de datos. En este nivel se puede utilizar un modelo
conceptual o un modelo lógico para especificar los esquemas.
Hay que destacar que los tres esquemas no son
más que descripciones de los mismos datos pero
con distintos niveles de abstracción. Los únicos
datos que existen realmente están a nivel físico,
almacenados en un dispositivo como puede ser un
disco. En un sistema de gestión de bases de
datos, basado en la arquitectura de tres niveles,
cada grupo de usuarios hace referencia
exclusivamente a su propio esquema externo. Por
lo tanto, el sistema de gestión de bases de datos
debe transformar cualquier petición expresada en términos de un esquema externo a
una petición expresada en términos del esquema conceptual, y luego, a una petición
en el esquema interno, que se procesará sobre la base de datos almacenada. Si la
petición es de una obtención (consulta) de datos, será preciso modificar el formato de
la información extraída de la base de datos almacenada, para que coincida con la
vista externa del usuario. El proceso de transformar peticiones y resultados de un nivel
a otro se denomina correspondencia o transformación. Estas correspondencias
pueden requerir bastante tiempo, por lo que algunos sistemas de gestión de bases de
datos no cuentan con vistas externas.
La arquitectura de tres niveles es útil para explicar el concepto de independencia de datos que podemos definir como
la capacidad para modificar el esquema en un nivel del sistema sin tener que modificar el esquema del nivel
inmediato superior. Se pueden definir dos tipos de independencia de datos:
BLOQUE 1
41

La independencia lógica es la capacidad de modificar el esquema conceptual sin tener que alterar los
esquemas externos ni los programas de aplicación. Se puede modificar el esquema conceptual para ampliar
la base de datos o para reducirla. Si, por ejemplo, se reduce la base de datos eliminando una entidad, los
esquemas externos que no se refieran a ella no deberán verse afectados.

La independencia física es la capacidad de modificar el
esquema interno sin tener que alterar el esquema
conceptual (o los externos). Por ejemplo, puede ser
necesario reorganizar ciertos ficheros físicos con el fin de
mejorar el rendimiento de las operaciones de consulta o
de actualización de datos. Dado que la independencia
física se refiere sólo a la separación entre las aplicaciones
y las estructuras físicas de almacenamiento, es más fácil
de conseguir que la independencia lógica.
En los sistemas de gestión de bases de datos
que tienen la arquitectura de varios niveles es
necesario ampliar el catálogo o diccionario, de
modo que incluya información sobre cómo
establecer la correspondencia entre las
peticiones de los usuarios y los datos, entre los
diversos niveles. El sistema de gestión de bases
de datos utiliza una serie de procedimientos
adicionales
para
realizar
estas
correspondencias haciendo referencia a la
información de correspondencia que se
encuentra en el catálogo. La independencia de
datos se consigue porque al modificarse el
esquema en algún nivel, el esquema del nivel
inmediato superior permanece sin cambios,
sólo se modifica la correspondencia entre los
dos niveles. No es preciso modificar los
programas de aplicación que hacen referencia
al esquema del nivel superior.
Por lo tanto, la arquitectura de tres niveles puede facilitar la obtención de la verdadera independencia de datos, tanto
física como lógica. Sin embargo, los dos niveles de correspondencia implican un gasto extra durante la ejecución de
una consulta o de un programa, lo cual reduce la eficiencia del sistema de gestión de bases de datos. Es por esto
que muy pocos sistemas de gestión de bases de datos han implementado esta arquitectura completa.
Lenguajes de los sistemas de gestión de bases de datos.
Los sistemas de gestión de bases de datos deben ofrecer lenguajes e
interfaces apropiadas para cada tipo de usuario: administradores de la base
de datos, diseñadores, programadores de aplicaciones y usuarios finales.
42
SISTEMAS DE GESTORES DE BASES DE DATOS
Lenguajes de definición de datos.
Una vez finalizado el diseño de una base de datos y escogido un sistema de gestión de bases 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 sistemas de gestión de bases de datos 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 definición de datos (LDD). El sistema de gestión de bases
de datos 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. Se dice que el
diccionario contiene metadatos: describe los objetos de la base de
datos.
Cuando en un sistema de gestión de bases de
datos 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.
Lenguajes de manejo de datos.
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
usuario (normalmente será un 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 embebidas 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.
BLOQUE 1
43
Un LMD no procedural se puede utilizar de manera independiente para
especificar operaciones complejas sobre la base de datos de forma concisa.
En muchos sistemas de gestión de bases de datos se pueden introducir
interactivamente instrucciones del LMD desde un terminal o bien embeberlas
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 usuario o
programador especifica qué datos quiere obtener sin decir cómo se debe
acceder a ellos. El sistema de gestión de bases de datos 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) o QBE (Query-By-Example). Los lenguajes no procedurales son más fáciles de aprender
y de usar que los procedurales, y el usuario debe realizar menos trabajo, siendo el sistema de gestión de bases de
datos quien hace la mayor parte.
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.
Lenguajes de cuarta generación.
No existe consenso sobre lo que es un lenguaje de cuarta generación (4GL). Lo que en un lenguaje de tercera
generación (3GL) como COBOL requiere cientos de líneas de código, tan solo necesita diez
o veinte líneas en un 4GL. Comparado con un 3GL, que es procedural, un 4GL es un
lenguaje no procedural: el usuario define qué se debe hacer, no cómo debe hacerse. Los
4GL se apoyan en unas herramientas de mucho más alto nivel denominadas herramientas
de cuarta generación. El usuario no debe definir los pasos a seguir en un programa para
realizar una determinada tarea, tan sólo debe definir una serie de parámetros que estas
herramientas utilizarán para generar un programa de aplicación. Se dice que los 4GL
pueden mejorar la productividad de los programadores en un factor de 10, aunque se limita
el tipo de problemas que pueden resolver. Los 4GL abarcan:




Lenguajes de presentación, como lenguajes de consultas y generadores de informes.
Lenguajes especializados, como hojas de cálculo y lenguajes de bases de datos.
Generadores de aplicaciones que definen, insertan, actualizan y obtienen datos de la base de datos.
Lenguajes de muy alto nivel que se utilizan para generar el código de la aplicación.
Los lenguajes SQL y QBE son ejemplos de 4GL. Hay otros tipos de 4GL:


44
Un generador de formularios es una herramienta interactiva que permite
crear rápidamente formularios de pantalla para introducir o visualizar
datos. Los generadores de formularios permiten que el usuario defina el
aspecto de la pantalla, qué información se debe visualizar y en qué lugar
de la pantalla debe visualizarse. Algunos generadores de formularios
permiten la creación de atributos derivados utilizando operadores
aritméticos y también permiten especificar controles para la validación de
los datos de entrada.
Un generador de informes es una herramienta para crear informes a partir
de los datos almacenados en la base de datos. Se parece a un lenguaje
de consultas en que permite al usuario hacer preguntas sobre la base de datos y obtener información de ella
para un informe. Sin embargo, en el generador de informes se tiene un mayor control sobre el aspecto de la
salida. Se puede dejar que el generador determine automáticamente el aspecto de la salida o se puede
diseñar ésta para que tenga el aspecto que desee el usuario final.
SISTEMAS DE GESTORES DE BASES DE DATOS


Un generador de gráficos es una herramienta para obtener
datos de la base de datos y visualizarlos en un gráfico
mostrando tendencias y relaciones entre datos. Normalmente
se pueden diseñar distintos tipos de gráficos: barras, líneas,
etc.
Un generador de aplicaciones es una herramienta para crear
programas que hagan de interface entre el usuario y la base
de datos. El uso de un generador de aplicaciones puede
reducir el tiempo que se necesita para diseñar un programa
de aplicación. Los generadores de aplicaciones constan de
procedimientos que realizan las funciones fundamentales que se utilizan en la mayoría de los programas.
Estos procedimientos están escritos en un lenguaje de programación de alto nivel y forman una librería de
funciones entre las que escoger. El usuario especifica qué debe hacer el programa y el generador de
aplicaciones es quien determina cómo realizar la tarea.
Actividad: 3
En binas, completa las siguientes tablas y participa en un debate grupal.
1) Con respecto a la arquitectura de una base de datos, completa la siguiente tabla en la cual,
define en tres niveles de abstracción, en la arquitectura de los sistemas de bases de datos.
Arquitectura de tres niveles para los sistemas de bases de datos.
Nivel interno
Definición:
BLOQUE 1
Nivel conceptual
Definición:
Nivel externo
Definición:
45
Actividad: 3 (continuación)
2)
La independencia de datos se definir como la capacidad para modificar el esquema en un
nivel del sistema, sin tener que modificar el esquema del nivel inmediato superior. En la
siguiente tabla escribe la definición de los dos tipos de independencia de datos:
Tipos de independencia de datos
Actividad: 3
Conceptual
Reconoce los niveles de
abstracción en las bases de
datos, así como los tipos de
independencia de datos.
Coevaluación
46
Evaluación
Producto: Tabla.
Saberes
Procedimental
Puntaje:
Actitudinal
Analiza los niveles de abstracción
de bases de datos y los tipos de
independencia de datos.
C
MC
NC
Muestra una actitud positiva
durante el desarrollo de la
actividad.
Calificación otorgada por el
docente
SISTEMAS DE GESTORES DE BASES DE DATOS
Esquemas de una base de datos.



Esquema conceptual de alto nivel de una base de datos: El diseño
conceptual parte de las especificaciones de requisitos de usuario y su
resultado es el esquema conceptual de la base de datos. Un
esquema conceptual es una descripción de alto nivel de la estructura
de la base de datos, independientemente del sistema de gestión de
bases de datos que se vaya a utilizar para manipularla. Un modelo
conceptual es un lenguaje que se utiliza para describir esquemas
conceptuales. El objetivo del diseño conceptual es describir el
contenido de información de la base de datos y no las estructuras de
almacenamiento que se necesitarán para manejar esta información.
Esquema lógico de la base de datos: El diseño lógico parte del
esquema conceptual y da como resultado un esquema lógico. Un
esquema lógico es una descripción de la estructura de la base de
datos en términos de las estructuras de datos que puede procesar un
tipo de sistemas de gestión de bases de datos. Un modelo lógico es un lenguaje usado para especificar
esquemas lógicos (modelo relacional, modelo de red, etc.). El diseño lógico depende del tipo de sistemas de
gestión de bases de datos que se vaya a utilizar, no depende del producto concreto.
Esquema físico de la base de datos: El diseño físico parte del esquema lógico y da como resultado un esquema
físico. Un esquema físico es una descripción
de la implementación de una base de datos en
memoria secundaria: las estructuras de
almacenamiento y los métodos utilizados para
tener un acceso eficiente a los datos. Por ello,
el diseño físico depende del sistema de
gestión de bases de datos concretos y el
esquema físico se expresa mediante su
lenguaje de definición de datos.
Modelos de datos.
Un modelo de datos es una serie de conceptos que puede utilizarse para describir un conjunto de datos y las
operaciones para manipularlos.
Hay dos tipos de modelos de datos: los conceptuales y los
lógicos.
Los modelos conceptuales se utilizan para representar la
realidad a un alto nivel de abstracción. Se puede construir una
descripción de la realidad fácil de entender.
En los modelos lógicos, las descripciones de los datos tienen
una correspondencia sencilla con la estructura física de la base
de datos.
En el diseño de bases de datos se usan primero los modelos
conceptuales para lograr una descripción de alto nivel de la
realidad, y luego se transforma el esquema conceptual en un
BLOQUE 1
47
esquema lógico. El motivo de realizar estas dos etapas es la dificultad de abstraer la estructura de una base de datos
que presente cierta complejidad. Un esquema es un conjunto de representaciones lingüísticas o gráficas que
describen la estructura de los datos de interés.
Los modelos conceptuales deben ser buenas herramientas para representar la realidad, por lo que deben poseer las
siguientes cualidades:
1)
2)
3)
4)
Expresividad: deben tener suficientes conceptos para expresar perfectamente la realidad.
Simplicidad: deben ser simples para que los esquemas sean fáciles de entender.
Minimalidad: cada concepto debe tener un significado distinto.
Formalidad: todos los conceptos deben tener una interpretación única, precisa y bien definida.
En general, un modelo no es capaz de expresar todas las propiedades de una realidad determinada, por lo que hay
que añadir aserciones que complementen el esquema.
Modelo Entidad-Relación.
El modelo entidad-relación es el modelo conceptual más utilizado para el diseño conceptual de bases de datos. Fue
introducido por Peter Chen en 1976. Está formado por un conjunto de conceptos que permiten describir la realidad
mediante un conjunto de representaciones gráficas y lingüísticas.
Originalmente, el modelo entidad-relación sólo
incluía los conceptos de entidad, relación y
atributo. Más tarde, se añadieron otros
conceptos, como los atributos compuestos y las
jerarquías de generalización, en lo que se ha
denominado modelo entidad-relación extendido.
Entidad
Cualquier tipo de objeto o concepto sobre el que
se recoge información: cosa, persona, concepto
abstracto o suceso. Por ejemplo: coches, casas,
empleados, clientes, empresas, oficios, diseños
de productos, conciertos, excursiones, etc. Las
entidades se representan gráficamente mediante
rectángulos y su nombre aparece en el interior. Un
nombre de entidad sólo puede aparecer una vez en el
esquema conceptual.
Hay dos tipos de entidades: fuertes y débiles. Una
entidad débil es una entidad cuya existencia depende
de la existencia de otra entidad. Una entidad fuertes es
una entidad en la cual su existencia no depende de la
existencia de otra entidad.
Relación (interrelación)
Es una correspondencia o asociación entre dos o más entidades. Cada relación tiene un nombre que describe su
función. Las relaciones se representan gráficamente mediante rombos y su nombre aparece en el interior.
Las entidades que están involucradas en una determinada relación se denominan entidades participantes. El número
de participantes en una relación es lo que se denomina grado de la relación. Por lo tanto, una relación en la que
participan dos entidades es una relación binaria; si son tres las entidades participantes, la relación es ternaria; etc.
Una relación recursiva es una relación donde la misma entidad participa más de una vez en la relación con distintos
papeles. El nombre de estos papeles es importante para determinar la función de cada participación.
48
SISTEMAS DE GESTORES DE BASES DE DATOS
La cardinalidad con la que una entidad participa en una relación especifica el número mínimo y el número máximo de
correspondencias en las que puede tomar parte cada ocurrencia de dicha entidad. La participación de una entidad en
una relación es obligatoria (total) si la existencia de cada una de sus ocurrencias requiere la existencia de, al menos,
una ocurrencia de la otra entidad participante. Si
no, la participación es opcional (parcial). Las reglas
que definen la cardinalidad de las relaciones son
las reglas de negocio.
´
´
A veces, surgen problemas cuando se está
diseñado un esquema conceptual. Estos
problemas,
denominados
trampas,
suelen
producirse a causa de una mala interpretación en
el significado de alguna relación, por lo que es
importante comprobar que el esquema conceptual
carece de dichas trampas. En general, para
encontrar las trampas, hay que asegurarse de que
se entiende completamente el significado de cada
relación. Si no se entienden las relaciones, se
puede crear un esquema que no represente
fielmente la realidad.
Una de las trampas que pueden encontrarse ocurre cuando el esquema representa una relación entre entidades, pero
el camino entre algunas de sus ocurrencias es ambiguo. El modo de resolverla es reestructurando el esquema para
representar la asociación entre las entidades correctamente.
Otra de las trampas sucede cuando un esquema sugiere la existencia de una relación entre entidades, pero el camino
entre una y otra no existe para algunas de sus
ocurrencias. En este caso, se produce una pérdida de
´
información que se puede subsanar introduciendo la
relación que sugería el esquema y que no estaba
´
representada.
Atributos
Es una característica de interés o un hecho sobre una
entidad o sobre una relación. Los atributos representan
las propiedades básicas de las entidades y de las
relaciones. Toda la información extensiva es portada por
los atributos. Gráficamente, se representan mediante
bolitas que cuelgan de las entidades o relaciones a las
que pertenecen.
Cada atributo tiene un conjunto de valores asociados
denominado dominio. El dominio define todos los valores
posibles que puede tomar un atributo. Puede haber varios
atributos definidos sobre un mismo dominio.
Los atributos pueden ser simples o compuestos. Un atributo simple es un atributo que tiene un solo componente, que
no se puede dividir en partes más pequeñas que tengan un significado propio. Un atributo compuesto es un atributo
con varios componentes, cada uno con un significado por sí mismo. Un grupo de atributos se representa mediante un
atributo compuesto cuando tienen afinidad en cuanto a su significado, o en cuanto a su uso. Un atributo compuesto
se representa gráficamente mediante un óvalo.
BLOQUE 1
49
Los atributos también pueden clasificarse en monovalentes o polivalentes. Un atributo monovalente es aquel que tiene
un solo valor para cada ocurrencia de la entidad o relación a la que pertenece. Un atributo polivalente es aquel que
tiene varios valores para cada ocurrencia de la
entidad o relación a la que pertenece. A estos
atributos también se les denomina multivaluados, y
pueden tener un número máximo y un número
mínimo de valores. La cardinalidad de un atributo
indica el número mínimo y el número máximo de
valores que puede tomar para cada ocurrencia de
la entidad o relación a la que pertenece. El valor por
omisión es.
Por último, los atributos pueden ser derivados. Un
atributo derivado es aquel que representa un valor
que se puede obtener a partir del valor de uno o
varios atributos, que no necesariamente deben
pertenecer a la misma entidad o relación.
Identificador
Un identificador de una entidad es un atributo o conjunto de atributos que determina de modo único cada ocurrencia
de esa entidad. Un identificador de una entidad debe cumplir dos condiciones:
1)
2)
No pueden existir dos ocurrencias de la entidad con el mismo valor del identificador.
Si se omite cualquier atributo del identificador, la condición anterior deja de cumplirse.
Toda entidad tiene al menos un identificador y puede tener varios identificadores alternativos. Las relaciones no tienen
identificadores.
Actividad: 4
Elabora un diagrama, sobre los modelos para la manipulación de una base de datos.
50
SISTEMAS DE GESTORES DE BASES DE DATOS
Actividad: 4 (continuación)
Actividad: 4
Conceptual
Identifica los modelos para la
manipulación de las bases de
datos.
Autoevaluación
BLOQUE 1
Evaluación
Producto: Diagrama.
Saberes
Procedimental
Puntaje:
Actitudinal
Diagrama los modelos para la
manipulación de una base de
datos.
C
MC
NC
Cumple con el desarrollo de la
actividad, en el plazo de tiempo
establecido.
Calificación otorgada por el
docente
51
Clasificación de los sistemas de gestión de bases de datos.
El primer criterio que se utiliza para clasificar los
sistemas de gestión de bases de datos es el
modelo lógico en que se basan. Los modelos
lógicos empleados con mayor frecuencia en los
sistemas de gestión actuales son el relacional, el
de red y el jerárquico. Algunos sistemas de
gestión de bases de datos más modernos se
basan en modelos orientados a objetos.
La estructura lógica, en el ámbito conceptual o
externo, es la base para la clasificación de los
sistemas de gestión de bases de datos en las
cuatro categorías siguientes: jerárquica, red,
relacional y orientada a objetos.
Cualquier categoría debe permitir un acceso
aleatorio a los datos requeridos, utilizando para tal
fin una estructura de datos: redes, árboles, tablas
o listas enlazadas. Cada sistema de gestión de
bases de datos está diseñado para manejar un
tipo de estructura lógica.
 Enfoque jerárquico: La base de datos jerárquica consta de muchos registros. Cada nodo representa un tipo de
registro conceptual o un segmento. Cada registro o segmento está constituido por un cierto número de campos
que lo describen. Cada rama representa una relación uno a muchos. En este modelo los datos se organizan en
una forma similar a un árbol (visto al revés), en donde un nodo padre de información puede tener varios hijos. El
nodo que no tiene padres es llamado raíz, y a los nodos que no tienen hijos se los conoce como hojas. Las bases
de datos jerárquicas son especialmente útiles en el caso de aplicaciones que manejan un gran volumen de
información y datos muy compartidos permitiendo crear estructuras estables y de gran rendimiento. Una de las
principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos.

52
Enfoque Red: Este es un modelo ligeramente
distinto del jerárquico; su diferencia fundamental
es la modificación del concepto de nodo: se
permite que un mismo nodo tenga varios padres
(posibilidad no permitida en el modelo jerárquico).
Fue una gran mejora con respecto al modelo
jerárquico, ya que ofrecía una solución eficiente al
problema de redundancia de datos; pero, aun así,
la dificultad que significa administrar la
información en una base de datos de red ha
significado que sea un modelo utilizado en su
mayoría por programadores más que por usuarios
finales. Para representar este tipo de relación, es
necesario que los dos tipos de registro estén
interconectados por medio de un registro conector
llamado conjunto conector.
SISTEMAS DE GESTORES DE BASES DE DATOS

Enfoque Relacionar: Este es el modelo utilizado en la actualidad para modelar problemas reales y administrar
datos dinámicamente. Su idea fundamental es el uso de "relaciones". Estas relaciones podrían considerarse
en forma lógica como conjuntos de datos llamados "tuplas". Pese a que ésta es la teoría de las bases de
datos relacionales creadas por Edgar Frank Codd, la mayoría de las veces se conceptualiza de una manera
más fácil de imaginar. Esto es pensando en cada relación como si fuese una tabla que está compuesta por
registros (las filas de una tabla), que representarían las tuplas, y campos (las columnas de una tabla).
Requisitos que deben cumplir las tablas en las bases de datos relacionales:







La tabla puede tener solo un tipo de registro.
Cada registro posee un número determinado de campos, cada uno de ellos con su nombre
correspondiente.
La base de datos tendrá muchas tablas.
Dentro de cada tabla, cada campo es distinto.
Cada registro de una tabla es único; no hay registros duplicados.
Los registros dentro de cada tabla no tienen una secuencia determinada.
Se pueden crear nuevas tablas relacionando campos procedentes de dos o más tablas existentes.
El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, (Structured Query
Language o Lenguaje Estructurado de Consultas), un estándar implementado por los principales motores o
sistemas de gestión de bases de datos relacionales.

Enfoque orientado a objetos: Define una base de datos en términos de objetos, sus propiedades y sus
operaciones. Los objetos con la misma estructura y comportamiento pertenecen a una clase, y las clases se
organizan en jerarquías o grafos a cíclicos. Las operaciones de cada clase se especifican en términos de
procedimientos predefinidos denominados métodos. Algunos sistemas de gestión de bases de datos
relacionales existentes en el mercado han estado extendiendo sus modelos para incorporar conceptos
orientados a objetos. A estos sistemas de gestión de bases de datos se les conoce como sistemas objetorelacionales.

Un segundo criterio para clasificar los sistemas de gestión de bases de datos es el número de usuarios a los que da
servicio el sistema. Los sistemas monousuario sólo atienden a un usuario a la vez, y su principal uso se da en los
ordenadores personales. Los sistemas multiusuario, entre los que se encuentran la mayor parte de los sistemas de
gestión de bases de datos, atienden a varios usuarios al mismo tiempo.
Un tercer criterio es el número de sitios en los que está distribuida la base de datos. Casi todos los sistemas de
gestión de bases de datos son centralizados: sus datos se almacenan en un solo computador. Los sistemas de
gestión de bases de datos centralizados pueden atender a varios usuarios, pero el sistema de gestión de bases de
datos y la base de datos en sí reside por completo en una sola máquina. En los sistemas de gestión de bases de
datos distribuidos la base de datos real y el propio software del sistema de gestión de bases de datos pueden estar
distribuidos en varios sitios conectados por una red. Los sistemas de gestión de bases de datos distribuidos
homogéneos utilizan los mismos sistemas de gestión de bases de datos en múltiples sitios. Una tendencia reciente
consiste en crear software para tener acceso a varias bases de datos autónomas preexistentes almacenadas en
sistemas de gestión de bases de datos distribuidos heterogéneos. Esto da lugar a los sistemas de gestión de bases
de datos federados o sistemas multibase de datos en los que los sistemas de gestión de bases de datos participantes
tienen cierto grado de autonomía local. Muchos sistemas de gestión de bases de datos distribuidos emplean una
arquitectura cliente-servidor.
BLOQUE 1
53
Actividad: 5
En binas, completa la siguiente tabla sobre la clasificación de los sistemas de gestión de
bases de datos y participa en un debate grupal.
Clasificación de los sistemas de gestión de bases de datos
Descripción
Enfoque jerárquico
Enfoque Red
Enfoque Relacionar
Enfoque orientado a objetos.
Actividad: 5
Conceptual
Identifica los enfoques de los
sistemas de gestión de bases
de datos.
Coevaluación
54
Evaluación
Producto: Tabla.
Puntaje:
Saberes
Procedimental
Actitudinal
Diferencia cada uno de los
Muestra interés al realizar la
enfoques de los sistemas de
actividad.
gestión de bases de datos.
C
MC
NC
Calificación otorgada por el
docente
SISTEMAS DE GESTORES DE BASES DE DATOS
Fundamentos de normalización de una base de datos.
La normalización es el proceso de organizar los datos de una base de datos. Se incluye la creación de tablas y el
establecimiento de relaciones entre ellas según reglas diseñadas tanto para proteger los datos como para hacer que
la base de datos sea más flexible al eliminar la redundancia y las dependencias incoherentes.
Los datos redundantes desperdician el espacio de disco y crean problemas de mantenimiento. Si hay que cambiar
datos que existen en más de un lugar, se deben cambiar de la misma forma exactamente en todas sus ubicaciones.
Un cambio en la dirección de un cliente es mucho más fácil de implementar si los datos sólo se almacenan en la tabla
Clientes y no en algún otro lugar de la base de datos.
¿Qué es una "dependencia incoherente"? Aunque es intuitivo para un usuario mirar en la tabla Clientes para buscar la
dirección de un cliente en particular, puede no tener sentido mirar allí el salario del empleado que llama a ese cliente.
El salario del empleado está relacionado con el empleado, o depende de él, y por lo tanto se debería pasar a la tabla
Empleados.
Las dependencias incoherentes pueden dificultar el acceso porque la ruta para encontrar los datos puede no estar o
estar interrumpida.
Hay algunas reglas en la normalización de una base de datos. Cada regla se denomina una "forma normal". Si se
cumple la primera regla, se dice que la base de datos está en la "primera forma normal". Si se cumplen las tres
primeras reglas, la base de datos se considera que está en la "tercera forma normal".
Aunque son posibles otros niveles de normalización, la tercera forma normal se considera el máximo nivel necesario
para la mayor parte de las aplicaciones.
Al igual que con otras muchas reglas y especificaciones formales, en los escenarios reales no siempre se cumplen los
estándares de forma perfecta. En general, la normalización requiere tablas adicionales y algunos clientes consideran
éste un trabajo considerable.
Si se decide infringir una de las tres primeras reglas de la normalización, se deberá tener la seguridad de que su
aplicación se anticipa a los problemas que puedan aparecer, como la existencia de datos redundantes y de
dependencias incoherentes.
Primera forma normal




Elimine los grupos repetidos de las tablas individuales.
Cree una tabla independiente para cada conjunto de datos relacionados.
Identifique cada conjunto de datos relacionados con una clave principal.
No debe usarse varios campos en una sola tabla para almacenar datos similares. Por ejemplo, para realizar el
seguimiento de un elemento del inventario que proviene de dos orígenes posibles, un registro del inventario puede
contener campos para el Código de proveedor 1 y para el Código de proveedor 2.
¿Qué ocurre cuando se agrega un tercer proveedor? Agregar un campo no es la respuesta, requiere modificaciones
en las tablas y el programa, y no admite fácilmente un número variable de proveedores.
En su lugar, coloca toda la información de los proveedores en una tabla independiente denominada Proveedores y
después vincula el inventario a los proveedores con el número de elemento como clave, o los proveedores al
inventario con el código de proveedor como clave.
BLOQUE 1
55
Segunda forma normal


Crea tablas independientes para conjuntos de valores que se apliquen a varios registros.
Relaciona estas tablas con una clave externa.
Los registros no deben depender de nada que no sea una clave principal de una tabla, una clave compuesta si es
necesario. Por ejemplo, considere la dirección de un cliente en un sistema de contabilidad. La dirección se necesita
en la tabla Clientes, pero también en las tablas Pedidos, Envíos, Facturas, Cuentas por cobrar y Colecciones.
En lugar de almacenar la dirección de un cliente como una entrada independiente en cada una de estas tablas,
almacénela en un lugar, ya sea en la tabla Clientes o en una tabla Direcciones independiente.
Tercera forma normal

Elimina los campos que no dependan de la clave.
Los valores de un registro que no sean parte de la clave de ese registro no pertenecen a la tabla. En general, siempre
que el contenido de un grupo de campos pueda aplicarse a más de un único registro de la tabla, considere colocar
estos campos en una tabla independiente. Por ejemplo, en una tabla Contratación de empleados, puede incluirse el
nombre de la universidad y la dirección de un candidato. Pero necesita una lista completa de universidades para
enviar mensajes de correo electrónico en grupo.
Si la información de las universidades se almacena en la tabla Candidatos, no hay forma de enumerar las
universidades que no tengan candidatos en ese momento. Cree una tabla Universidades independiente y vincúlela a
la tabla Candidatos con el código de universidad como clave.
EXCEPCIÓN: Cumplir la tercera forma normal, aunque en teoría es deseable, no siempre es práctico. Si tiene una
tabla Clientes y desea eliminar todas las dependencias posibles entre los campos, debe crear tablas independientes
para las ciudades, códigos postales, representantes de venta, clases de clientes y cualquier otro factor que pueda
estar duplicado en varios registros. En teoría, la normalización merece el trabajo que supone. Sin embargo, muchas
tablas pequeñas pueden degradar el rendimiento o superar la capacidad de memoria o de archivos abiertos.
Puede ser más factible aplicar la tercera forma normal sólo a los datos que cambian con frecuencia. Si quedan
algunos campos dependientes, diseñe la aplicación para que pida al usuario que compruebe todos los campos
relacionados cuando cambie alguno.
Otras formas de normalización
La cuarta forma normal, también llamada Forma normal de Boyce Codd (BCNF, Boyce Codd Normal Form), y la
quinta forma normal existen, pero rara vez se consideran en un diseño real. Si no se aplican estas reglas, el diseño de
la base de datos puede ser menos perfecto, pero no debería afectar a la funcionalidad.
56
SISTEMAS DE GESTORES DE BASES DE DATOS
Normalizar una tabla de ejemplo.
Estos pasos demuestran el proceso de normalización de una tabla de alumnos ficticia.
1. Tabla sin normalizar:
Nº alumno
Tutor
Despacho-Tut
Clase1
Clase2
Clase3
1022
García
412
101-07
143-01
159-02
4123
Díaz
216
201-01
211-02
214-01
2. Primera forma normal: No hay grupos repetidos.
Las tablas sólo deben tener dos dimensiones. Puesto que un alumno tiene varias clases, estas clases deben
aparecer en una tabla independiente. Los campos Clase1, Clase2 y Clase3 de los registros anteriores son
indicativos de un problema de diseño.
Las hojas de cálculo suelen usar la tercera dimensión, pero las tablas no deberían hacerlo. Otra forma de
considerar ese problema es con una relación de uno a varios y poner el lado de uno y el lado de varios en
tablas distintas. En su lugar, cree otra tabla en la primera forma normal eliminando el grupo repetido (Nº
clase), según se muestra a continuación:
Nº alumno
Tutor
Despacho-Tut
Nº clase
1022
García
412
101-07
1022
García
412
143-01
1022
García
412
159-02
4123
Díaz
216
201-01
4123
Díaz
216
211-02
4123
Díaz
216
214-01
3. Segunda forma normal: Eliminar los datos redundantes.
Observe los diversos valores de Nº clase para cada valor de Nº alumno en la tabla anterior. Nº clase no
depende funcionalmente de Nº alumno (la clave principal), de modo que la relación no cumple la segunda
forma normal.
Las dos tablas siguientes demuestran la segunda forma normal:
Alumnos:
BLOQUE 1
Nº alumno
Tutor
Despacho-Tut.
1022
García
412
4123
Díaz
216
57
Registro:
Nº alumno
Nº clase
1022
101-07
1022
143-01
1022
159-02
4123
201-01
4123
211-02
4123
214-01
4. Tercera forma normal: Eliminar los datos no dependientes de la clave.
En el último ejemplo, Despacho-Tut (el número de despacho del tutor) es funcionalmente dependiente del
atributo Tutor. La solución es pasar ese atributo de la tabla Alumnos a la tabla Personal, según se muestra a
continuación:
Alumnos:
Nº alumno
Tutor
1022
García
4123
Díaz
Personal:
58
Nombre
Habitación
Dept.
García
412
42
Díaz
216
42
SISTEMAS DE GESTORES DE BASES DE DATOS
Cierre
Actividad: 6
En equipo de cinco integrantes, realiza una investigación sobre algún caso donde se lleve
a cabo la normalización de una base de datos y posteriormente coméntalo con tus
compañeros y profesor.
En este espacio dibuja la tabla sin normalizar, también dibuja la primera, segunda, tercera y cuarta forma normal.
Evaluación
Actividad: x
Producto:
Conceptual
Autoevaluación
BLOQUE 1
Puntaje:
Saberes
Procedimental
C
MC
NC
Actitudinal
Calificación otorgada por el
docente
59
Actividad: 6 (continuación)
Actividad: 6
Conceptual
Identifica los fundamentos de la
normalización de bases de
datos.
Coevaluación
60
Evaluación
Producto: Investigación.
Saberes
Procedimental
Puntaje:
Aplica la primera, segunda, tercera
y cuarta forma normal.
C
MC
NC
Actitudinal
Realiza la normalización de la
base de datos en forma
ordenada.
Calificación otorgada por el
docente
SISTEMAS DE GESTORES DE BASES DE DATOS
Utiliza Visual Fox Pro.
Competencias profesionales:






Desarrolla documentos electrónicos, de acuerdo con los requerimientos establecidos (software).
Localiza, obtiene información y se comunica utilizando las tecnologías de la información y de comunicación
(software).
Diseña y modifica las imágenes digitales, estáticas y dinámicas, empleando herramientas de software de
diseño (multimedia).
Instala y configura hardware, software y sistemas de seguridad informática, conforme a los manuales del
fabricante, reglas de seguridad e higiene y políticas de uso (hardware).
Aplica mantenimiento preventivo, correctivo y cualitativo de hardware y software, de acuerdo con los
manuales técnicos del fabricante y las políticas establecidas (hardware).
Resuelve problemas de procesamiento de información utilizando lenguajes, manejadores de bases de datos y
metodologías, de acuerdo con los requerimientos del usuario (software).
Unidad de competencia:

Reconoce las ventajas del uso del VISUAL FOXPRO como sistema de gestión de base de datos y utiliza
tablas para la creación de proyectos mediante formularios, para la manipulación correcta y responsable en
las operaciones de consulta, edición, adición y eliminación de la información.
Atributos a desarrollar en el bloque:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Enfrenta las dificultades que se le presentan y es consciente de sus valores, fortalezas y debilidades.
Administra los recursos disponibles teniendo en cuenta las restricciones para el logro de sus metas.
Elige alternativas y cursos de acción con base en criterios sustentados y en el marco de un proyecto de vida.
Aplica distintas estrategias comunicativas según quienes sean sus interlocutores, el contexto en el que se
encuentra y los objetivos que persigue.
Maneja las tecnologías de la información y la comunicación para obtener información y expresar ideas.
Sigue instrucciones y procedimientos de manera reflexiva, comprendiendo como cada uno de sus pasos
contribuye al alcance de un objetivo.
Ordena información de acuerdo a categorías, jerarquías y relaciones.
Utiliza las tecnologías de la información y comunicación para procesar e interpretar información.
Elige las fuentes de información más relevantes para un propósito específico y discrimina entre ellas de
acuerdo a su relevancia y confiabilidad.
Estructura ideas y argumentos de manera clara, coherente y sintética.
Define metas y da seguimiento a sus procesos de construcción de conocimiento.
Identifica las actividades que le resultan de menor y mayor interés y dificultad, reconociendo y controlando sus
reacciones frente a retos y obstáculos.
Articula saberes de diversos campos y establece relaciones entre ellos y su vida cotidiana.
Propone maneras de solucionar un problema o desarrollar un proyecto en equipo, definiendo un curso de
acción con pasos específicos.
Aporta puntos de vista con apertura y considera los de otras personas de manera reflexiva.
Asume una actitud constructiva, congruente con los conocimientos y habilidades con los que cuenta dentro de
distintos equipos de trabajo.
Tiempo asignado: 20 horas
Secuencia didáctica 1.
Introducción al Visual FoxPro.
Inicio

Actividad: 1
Desarrolla lo que se pide, expresando tu opinión y experiencia sobre el tema.
1.
Menciona tres manejadores de bases de datos.
__________________________________________________________________________________________________
__________________________________________________________________________________________________
2.
¿Qué es un proyecto?
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
3.
¿Qué es un formulario?
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
4.
¿Qué es un reporte?
__________________________________________________________________________________________________
__________________________________________________________________________________________________
_________________________________________________________________________________________________
5.
Menciona tres ventajas que tiene la biblioteca de tu plantel, al utilizar un sistema de bases de datos.
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
Actividad: 1
Conceptual
Reconoce los componentes y
las ventajas de un sistema de
base de datos.
Autoevaluación
62
Evaluación
Producto: Cuestionario.
Puntaje:
Saberes
Procedimental
Actitudinal
Analiza los componentes y las
Contesta responsablemente el
ventajas de un sistema de base de cuestionario y participa en un
datos.
debate grupal.
C
MC
NC
Calificación otorgada por el
docente
UTILIZA VISUAL FOX PRO
Desarrollo
Introducción al Visual Fox.
Visual Fox es uno de los gestores de Bases de Datos relacionales más rápido y flexible del mercado, disponiendo de
un complejo entorno de desarrollo totalmente orientado al objeto y altamente integrado al sistema operativo Windows.
Como cualquier otra aplicación Windows estándar, Visual Fox soporta interfaces MDI (Interfaz de Documento
Múltiple), como la de Word, barras de herramientas, ayuda sensible al contexto, múltiples fuentes, acceso a
bibliotecas de enlace dinámico (Dll), entre otras.
Visual FoxPro es un lenguaje de programación orientado a objetos y procedural, un Sistema Gestor de Bases de
datos o Database Management System (DBMS), y desde la versión 7.0, un sistema administrador de bases de datos
relacionales, producido por Microsoft.
Ofrece a los desarrolladores un conjunto de herramientas para crear aplicaciones de bases de datos para el
escritorio, para entornos cliente/servidor, Tablet PC o para la Web.
Características







Capacidades poderosas y muy veloces para el manejo de datos nativos y remotos.
Flexibilidad para crear todo tipo de soluciones de bases de datos Lenguaje de Programación Orientado a
objetos.
Utilización de Sentencias SQL en forma nativa.
Poderoso manejo de vistas y cursores, y control completo de estructuras relacionales.
Su propio gestor de base de datos incorporado. Sin embargo, también puede conectarse con servidores de
base de datos, tales como Oracle, Microsoft SQL Server o MySQL.
Cuenta con un motor de generación de informes renovado y muy flexible para soluciones más robustas.
Desde la versión 9.0, amplio soporte de XML, tanto como fuente de datos (por ejemplo, servicios Web
basados en XML) como por generar reportes en formato XLM.
Aparte del acceso a tablas en formato nativo de Visual Fox, se puede acceder virtualmente a cualquier fuente de datos
cuyo acceso se pueda hacer a través de ODBC (Open Database Connectivity). Este estándar, definido como
Conectividad Abierta de Bases de Datos, permite abrir y consultar diversas bases de datos a través de un conjunto de
controladores, utilizando SQL como lenguaje de consulta.
Con el advenimiento de Visual Fox, los desarrolladores de aplicaciones tienen acceso a multitud de eventos y
opciones que los programadores de Visual Basic y Visual C tuvieron durante años.
Programación orientada a eventos.
En Visual FoxPro cada acción que se realiza es un evento, por ejemplo el movimiento del mouse, hacer clic sobre un
botón y escribir algo en un cuadro de texto, entre otras. Por lo tanto, cuando se programa en Visual FoxPro, quedan
atrás todas las formas de programar en FoxPro para Windows ya que no es necesario tener procedimientos o rutinas
para validar, por ejemplo para la entrada de la clave de un artículo, simplemente se programa el evento respectivo, y
de esta forma no es tan tedioso el mantenimiento del sistema. Es decir, si existe algún error, no tienes que recorrer
todo el archivo de rutinas para encontrar la falla. Por ejemplo si en FoxPro DOS o para Windows se necesita poner
algunos botones que ejecutan ciertas instrucciones, se debe crear una función en la cual se pregunte cuál fue el
botón que se presionó, y según el valor, se ejecutan las instrucciones. En Visual FoxPro no es así, simplemente se
programan instrucciones específicas para cada botón, e independientemente de que se presione otro no es necesario
preguntar cuál fue el que se presionó, porque cada evento de cada objeto es independiente y solo puede ocurrir uno
en ese momento, es decir que no se pueden desencadenar dos eventos al mismo tiempo: o es clic, o se movió el
ratón, o es algún otro evento.
BLOQUE 2
63
Programación orientada a objetos.
En Visual FoxPro y en otros, se le llama objeto a todo lo que se percibe en pantalla; objetos son, por ejemplo, un
botón, una caja de texto, una imagen, y en general, todo objeto visual que se presenta en la pantalla.
Se les llama objetos porque cada uno tiene sus propiedades, por ejemplo un botón tiene su propiedad de texto que
es la que se ve dentro del botón, también tiene un ancho, un alto, y así para cada uno de los objetos, he aquí la
ventaja de Visual FoxPro sobre lenguajes como FoxPro para Windows, en la cual son solamente campos y no se les
puede cambiar sus características de forma dinámica.
Características de la programación orientada a objetos.

Es un entorno de desarrollo de sistemas.

Puede llevar a un desarrollo más rápido y eficaz y a prototipos más precisos.

Permite un desarrollo más rápido y menor probabilidad de que se produzcan errores.

Facilidad de modificar objetos.

Objetos reutilizables, es decir que, una vez que se ha desarrollado y depurado una clase, ésta puede
añadirse a otras aplicaciones sin necesidad de modificarla más.
 Se pueden combinar objetos para crear objetos nuevos y dinámicos.
64
UTILIZA VISUAL FOX PRO
Actividad: 2
Desarrolla lo que se pide, y posteriormente, participa en un debate grupal.
1. ¿Qué es el Visual Fox Pro?
_______________________________________________________________________________________________
_______________________________________________________________________________________________
_______________________________________________________________________________________________
_______________________________________________________________________________________________
_______________________________________________________________________________________________
2. Menciona tres ventajas del uso del Visual Fox Pro.
a. ____________________________________________________________________________________________
b. ____________________________________________________________________________________________
c. ____________________________________________________________________________________________
3. Menciona tres de las características principales del Visual Fox Pro.
a. _______________________________________________________________________________________________
b. _______________________________________________________________________________________________
c. _______________________________________________________________________________________________
4. ¿Qué es la programación orientada a eventos?
_______________________________________________________________________________________________
_______________________________________________________________________________________________
_______________________________________________________________________________________________
5. ¿Qué es la programación orientada a objetos?
_______________________________________________________________________________________________
_______________________________________________________________________________________________
_______________________________________________________________________________________________
6. Menciona tres características de la programación orientada a objetos.
a. ____________________________________________________________________________________________
b. ____________________________________________________________________________________________
c. ____________________________________________________________________________________________
7. ¿Cuál es la diferencia entre la programación orientada a eventos y la programación orientada a objetos?
_______________________________________________________________________________________________
_______________________________________________________________________________________________
_______________________________________________________________________________________________
_______________________________________________________________________________________________
_______________________________________________________________________________________________
__________
BLOQUE 2
65
Actividad: 2
Conceptual
Reconoce las ventajas y
características del Visual FoxPro.
Autoevaluación
Evaluación
Producto: Cuestionario.
Saberes
Procedimental
Puntaje:
Analiza las ventajas y
características del Visual FoxPro.
C
MC
NC
Actitudinal
Contesta responsablemente el
cuestionario y participa en un
debate grupal.
Calificación otorgada por el
docente
Tipos de generadores.
Los generadores son entornos de trabajo en los que se construyen componentes de una aplicación de FoxPro.








Generador de clases. Para construir objetos reutilizables.
Generador de Bases de Datos. Para organizar los datos en tablas y documentar las relaciones entre tablas.
Generador de formularios. Para diseñar las pantallas de la aplicación.
Generador de consulta. Para construir conjuntos de datos utilizados en reportes y en pantallas de sólo lectura.
Generador de informes. Para construir informes para la pantalla o la impresora.
Generador de menús. Construye el sistema de menús que ejecuta una aplicación.
Generador de tablas. Administra el formato de las tablas utilizadas en la aplicación.
Generador de cuadrículas. Permite aprender cómo las configuraciones de la propiedad de cuadrícula del
objeto controlan la operación de la cuadrícula.
Utiliza los asistentes.
Asistente es un conjunto de cuadro de diálogos, los cuales ayudan a crear, paso a paso, una determinada aplicación,
por ejemplo, un formulario.




Asistente para formularios. Construye "Pantallas instantáneas" con la estructura de las tablas, basándose en
clases prediseñadas, incluidos efectos especiales en las pantallas y botones de navegación ínter-construidos.
Asistente para documentación. Documenta la aplicación.
Asistente para informes. Diseña informes, sencillos o complejos, utilizando un poco más que la estructura de
las tablas.
Asistentes para: Tablas dinámicas, upsizing, etiquetas, Bases de Datos, tablas, etc.
Estructura de un .DBF
Los datos en FoxPro se almacenan en una tabla. En una base de datos, una tabla es el conjunto de datos
organizados en filas y columnas, en donde a las filas o renglones se les llama “registros” y a las columnas se les llama
“campos”. Como los podrás observar e identificar en la siguiente imagen.
66
UTILIZA VISUAL FOX PRO
Campos
Registros
Tipos de campos.
Entre las características más importantes de los campos se encuentran dos: no deben de contener caracteres
especiales, a excepción del carácter "Guión bajo" y tampoco pueden empezar con un número.
Los campos pueden ser de tipo:












Carácter. Cualquier cosa que se pueda teclear, puede ir en un campo de caracteres. Un carácter es lo mismo
que un byte y un byte puede tener cualquier valor ASCII hasta 255, con unas cuantas excepciones.
Numérico. Hasta un límite de 18 dígitos, con tantas cifras decimales como se desee. Los enteros se
almacenan en este formato, aunque hay otro tipo de campo (el de moneda) que se utiliza generalmente para
dinero.
Flotante. Se utiliza para la compatibilidad con dBASE V y es equivalente al formato numérico.
Fecha. Se utiliza para almacenar la fecha en un formato interno numérico, cuya validación y representación es
controlada en el mismo.
Lógico. Éste, ya sea verdadero o falso, es representado por T o F (del Inglés), para verdadero o falso,
respectivamente.
Memo. Representado en su estructura de registros como un campo de caracteres de longitud 10, estos
campos almacenan en una segunda tabla con la extensión .FPT, además, pueden ser casi de cualquier
tamaño.
General. También son campos memos, excepto que usualmente almacenan otros tipos de objetos además
de texto como gráficos, por ejemplo.
Fecha-hora. Incluye la hora después de la fecha, en el formato [MM/DD/AA hh:mm:ss].
Moneda. Es un campo numérico e incluye cuatro cifras decimales.
Imagen. Como su nombre lo indica, es utilizado para guardar imágenes.
Carácter binario. Campos de caracteres no sujetos a traducciones de páginas de códigos.
Memo binario. Campos memo con la misma característica NOCPTRANS.
NOCPTRANS impide la conversión a otra página de códigos distinta para los campos de tipo carácter y memo. Si la
tabla se convierte a otra página de códigos, los campos para los que se haya especificado NOCPTRANS no se
convertirán. NOCPTRANS solamente se puede especificar para los campos de tipo carácter y memo.
BLOQUE 2
67
El ejemplo siguiente crea una tabla denominada MYTABLE con dos campos de caracteres y dos campos memo. El
segundo campo de caracteres char2 y el segundo campo memo memo2 incluyen NOCPTRANS para evitar la
conversión.
CREATE TABLE mytable (char1 C(10), char2 C(10) NOCPTRANS,;
memo1 M, memo2 M NOCPTRANS)
Actividad: 3
s
En binas, completa con lo que se pide, cada una de las siguientes tablas.
a) Los tipos de Generadores del Visual Fox Pro.
Generadores
Función
Clase
Base de datos
Formularios
Consulta
Informes
Menú
Tabla
68
UTILIZA VISUAL FOX PRO
Actividad: 3 (continuación)
b) Los tipos de asistentes del Visual Fox Pro.
Asistentes
Función
Formularios
Documentación
Informes
BLOQUE 2
69
Actividad: 3 (continuación)
c) Los diferentes tipos de campo del Visual FoxPro.
Tipo
Definición
Carácter
Numérico
Flotante
Fecha
Lógico
Memo
Moneda
Actividad: 3
Conceptual
Identifica los componentes de
los generadores, los asistentes y
tipos de campo.
Coevaluación
70
Evaluación
Producto: Tablas.
Puntaje:
Saberes
Procedimental
Actitudinal
Analiza los generadores, asistentes
Es atento y comunicativo en el
y tipos de campo, en un mapa
trabajo colaborativo.
conceptual.
C
MC
NC
Calificación otorgada por el
docente
UTILIZA VISUAL FOX PRO
Modo de operación.
Para comenzar a utilizar el programa:

Inicio
Microsoft Visual FoxPro
Icono para acceder al Visual Fox Pro
Botón de Inicio

Escritorio de Windows
Icono de Visual Fox Pro.
Al acceder por primera vez a Visual Fox Pro, se muestra una pantalla de bienvenida.
Introducción a la interfaz de usuario de Microsoft Visual FoxPro.
Se conoce como entorno de desarrollo a
las partes visuales de las que está
compuesto
todo
lenguaje
de
programación visual, como lo son Visual
FoxPro, Visual Basic, Delphi, entre otros.
Desde Visual FoxPro podemos crear
formularios, bases de datos, informes,
vistas, proyectos y otros más. Podemos
crear los elementos de un proyecto por
separado y luego agregarlo a un proyecto
existente o, crear un proyecto y desde éste
ir agregando los elemento que deba
contener. Cuando creamos un proyecto
debemos crear una carpeta de trabajo en
la se guarde el proyecto.
BLOQUE 2
71
Actividad: 4
Después de observar el video “Entorno de Visual Fox Pro”, desarrolla lo que se pide.
a) En la siguiente imagen, escribe el nombre de los elementos del entorno del Visual Fox Pro.
___________________
___________________
________________________
72
UTILIZA VISUAL FOX PRO
Actividad: 4 (continuación)
b) De acuerdo con la información presentada en el video, ¿Cuál es la función de la ventana de
comandos?
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
c) Menciona dos ejemplos de comandos que se mencionan en el video.
i.
________________________________________________________________________________________
ii.
________________________________________________________________________________________
Evaluación
Actividad: 4
Producto: Cuestionario.
Conceptual
Reconoce el entorno de trabajo
del Visual Fox Pro.
Autoevaluación
BLOQUE 2
Puntaje:
Saberes
Procedimental
Actitudinal
Analiza el uso de la ventana de
comando.
C
MC
NC
Muestra interés y actitud positiva
en el desarrollo de la actividad.
Calificación otorgada por el
docente
73
Descripción de los componentes de la ventana.

Barra de Herramientas.
El visual nos proporciona una barra de herramientas estándar en la cual se encuentran las opciones que más
frecuentemente utilizamos al manipular un archivo.
Barra de Menú.
74

Menú Archivo. Permite llevar a cabo las principales operaciones con
archivos (Nuevo, Cerrar, Guardar, Guardar como y Abrir).

Menú Edición. Por medio de las opciones de este menú, se puede
manipular la información de los diferentes archivos que se generen
en visual.
UTILIZA VISUAL FOX PRO

Menú Ver. Permite visualizar las barras de Herramientas.

Barra de Formato. Aquí se puede seleccionar el tipo de letra que se
desea utilizar en la ventana de comando o al momento de realizar un
programa, así mismo, se puede también establecer el espaciado de
los renglones. Por lo general, esta opción permite los cambios sobre la
escritura en visual.
En la opción de fuente se puede seleccionar el tipo de letra, estilo y
tamaño que se requieren.
BLOQUE 2
75
76

Menú Herramientas. Una de las opciones más importantes en este menú es la de tener la oportunidad de
accesar a los asistentes que nos facilita el visual.

Menú Programa. Permite ejecutar las aplicaciones del visual tales
como proyectos, formularios, menús, informes, programas, consultas,
etc. Así mismo, la ejecución de estas aplicaciones las podemos
cancelar, reanudar o suspender, según sea requerido. La opción
compilar se recomienda principalmente cuando se está programando
en código fuente, para hacer un análisis de la sintaxis y semántica de
las instrucciones y comandos del programa.

Menú Ventana. Presenta opciones referentes a la visualización del
entorno del visual, las cuales pueden ser: organizar, ocultar, borrar,
recorrer y activar la ventana de comandos.
UTILIZA VISUAL FOX PRO

Menú Ayuda. Visual proporciona varias opciones de ayuda por temas, contenido, índice y búsqueda, además
de un soporte y un enlace a Microsoft en la Web, para descarga de material gratuito.
Operaciones básicas.
Nuevo. Esta operación permite crear diferentes tipos de archivos. Al pulsar
sobre esta opción, el visual proporciona un menú contextual con las
siguientes opciones.
BLOQUE 2
77
Abrir. Esta opción da la pauta para abrir archivos, los
cuales fueron previamente almacenados en algún
dispositivo de almacenamiento.
Guardar. Esta opción permite guardar un archivo de manera rápida, cuando ya ha sido guardado previamente en un
dispositivo de almacenamiento. Se debe recordar que cuando se va a guardar un archivo por primera vez, por default
el visual ejecuta la opción Guardar como.
En Guardar como se debe asignar el nombre y tipo al archivo, además de ubicar la carpeta en el dispositivo de
almacenamiento destino, ya sea el disco local o una USB.
78
UTILIZA VISUAL FOX PRO
Cierre
Actividad: 5
En equipo de cinco integrantes, realiza la respectiva investigación para completar cada
una de las siguientes tablas y, posteriormente, participa en un debate grupal:
a) Barra de herramientas estándar.
Icono
BLOQUE 2
Nombre
Función
79
Actividad: 5 (continuación)
b) Menú Archivo.
Nombre
Función
Guardar como HTML
Revertir
Importar
Exportar
Enviar
80
UTILIZA VISUAL FOX PRO
Actividad: 5 (continuación)
c) Menú Edición.
Nombre
Función
Buscar
Buscar siguiente
Reemplazar
Ir a la línea…
BLOQUE 2
81
Actividad: 5 (continuación)
d) Menú Programa.
Nombre
Función
Ejecutar
Reanudar
Suspender
Cancelar
Compilar
Evaluación
Actividad: 5
Producto: Tabla.
Puntaje:
Saberes
Conceptual
Procedimental
Identifica las opciones de las
barras de Menú y de la barra de
Herramientas Estándar.
Analiza las principales opciones de
las barras de Menú y de la barra de
herramientas Estándar.
C
Autoevaluación
82
MC
NC
Actitudinal
Muestra interés en el trabajo
colaborativo.
Calificación otorgada por el
docente
UTILIZA VISUAL FOX PRO
Secuencia didáctica 2.
Desarrollo de trabajo en Visual FoxPro.
Inicio

Actividad: 1
En equipo de cinco integrantes, escribe los campos y su tipo, para los sistemas que a
continuación se solicitan posteriormente coméntalo con tus compañeros y docente.
1.
Una agenda de los compañeros de tu grupo.
2.
Control de libros de la biblioteca del plantel.
Actividad: 1
Conceptual
Reconoce la utilización de
diversos tipos de campo, en
diferentes contextos.
Autoevaluación
BLOQUE 2
Evaluación
Producto: Ejercicio práctico.
Saberes
Procedimental
Analiza el uso de los campos en
diferentes contextos.
C
MC
NC
Puntaje:
Actitudinal
Muestra apertura y respeto para
escuchar las opiniones de sus
compañeros y docente.
Calificación otorgada por el
docente
83
Desarrollo
Implementación de un proyecto.
Para utilizar la opción Nuevo, es importante tener bien definido lo que se va a realizar, en este caso utilizaremos el tipo
de archivo Proyecto.


Seleccionar el tipo de archivo.
Después utilizar las opciones de Nuevo archivo, o
Asistente.
Si seleccionamos el botón de Nuevo archivo debemos
asignarle un nombre a nuestro proyecto. Antes de llevar a
cabo este paso, es importante crear una carpeta para el
proyecto.
Ejemplo:
 Una carpeta con el nombre Fox Pro Cobach.
 Nombre del proyecto: Mi primer proyecto.
Posteriormente, dar clic en el botón Save (Guardar).
Posteriormente se abrirá la ventada del Administrador de Proyectos,
desde donde se administran datos, documentos, clases, códigos u
otros.
Si se selecciona la pestaña de Datos, se puede manipular Data
bases (bases de datos), Tablas libres y Consultas.
84
UTILIZA VISUAL FOX PRO
Utiliza la ficha de datos.
Con respecto a los datos se puede crear una Data base,
dando clic en el botón Nuevo.
Al dar clic en el botón Nuevo, se tienen las condiciones de
crear una base de datos nueva, utilizando ya sea el
Asistente para bases de datos o el botón Nueva base de
datos.
Opción botón Nueva base de datos
La ventana Crear es a la cual tenemos acceso, misma que
permite crear una nueva Base de datos, es de suma
importancia asignarle un nombre a la misma, el cual debe ser
afín a la información que se utilice ya que, normalmente, en los
proyectos se utiliza más de una base de datos.
Es importante identificar el tipo de base de datos que se va a
guardar, ya que las bases de datos en este caso por default
llevan la extensión *.dbc.
Al guardar la base de datos se inicia el Diseñador de la misma, el cual permite realizar las operaciones con tablas
tales como:









Nueva.
Agregar.
Quitar.
Modificar.
Examinar.
Nueva vista remota.
Nueva vista local.
Modificar procedimientos
almacenados.
Conexiones.
BLOQUE 2
85
Descripción de los botones del diseñador de Bases de Datos.
Crear una nueva tabla.
Agregar una tabla existente
Eliminar una tabla seleccionada
Modificar una tabla seleccionada
Creación de Vistas remotas
Creación de Vistas locales
Editar Procedimientos almacenados en la Base de Datos
Creación de Conexiones con vistas remotas
Examinar el contenido una tabla o base de datos.)
Crea una tabla en Visual Fox Pro.
Al pulsar el botón
Nueva Tabla, el Visual FoxPro presenta una ventana que permite la posibilidad de integrar
una Nueva Tabla. Ésta a su vez, presenta dos opciones de trabajo, una por medio del asistente y la otra de forma
manual, que es la que se utilizará.

Asignar un nombre a la Tabla, que tenga relación con la información que
contiene y con extensión *.DBF, para identificar que es una Tabla.
Nota.
Después de asignarle el nombre a la Tabla, el Visual FoxPro nos presenta una
ventana para su diseño.
86
Antes de introducir los
campos a la tabla, se
recomienda llevar a
cabo un análisis de los
datos que ésta va a
contener, ya que no es
recomendable
modificar su estructura.
UTILIZA VISUAL FOX PRO
El diseñador de tablas, tiene
tres
pestañas:
Campos,
Índices y Tabla, donde cada
uno es importante en la
estructura de la tabla.
La pestaña de campo contiene
Nombre, Tipo, Ancho, Decimal,
Índice y NULL., y es donde se
debe definir el nombre, tipo y
ancho principalmente de los
campos de tabla.


Primero se le asigna el nombre al campo.
Enseguida el tipo de campo, que puede ser Carácter, Monetario, Numérico, Flotante, Fecha, Date Time, etc., y
posteriormente el Ancho.
BLOQUE 2
87
Ejemplo:
Al pulsar el botón Aceptar, Visual Fox Pro pregunta:
Si la respuesta es afirmativa, estaremos en condición de introducir
datos a nuestra Tabla; de lo contrario, el proceso de cargar datos se
podrá llevar a cabo en otro momento.
88
UTILIZA VISUAL FOX PRO
Al momento de introducir los datos a la tabla, se dan las condiciones para
utilizar las operaciones con tablas tales como: Agregar Registros, Quitar
Registros, Modificar Registros, etc.
Es importante apuntar que las tablas también se pueden crear desde el menú
Archivo, opción Nuevo y seleccionando Tabla. A continuación seguimos los
pasos antes mencionados.
Para visualizar el contenido de la tabla, identificar el icono de Ejecutar:
Y al momento de pulsar el icono Ejecutar, se tiene un panorama general de la tabla.
En la misma ventana para crear TABLAS, en la parte inferior se encuentra el área MOSTRAR.
Descripción del área mostrar.
o
o
o
Formato. Es el formato de salida del campo, ejemplo si fuera numérico 9,999.99 o si fuera caracter !!!!!!!!!!!!,
para que sólo acepte mayúsculas.
Máscara de entrada. Igual que el Formato, sólo que es para la entrada de datos.
Título. Descripción más precisa del campo, es de utilidad al diseñar los Formularios.
BLOQUE 2
89
Definición de reglas de validación a nivel de campo.
La validación consiste en eventos que se ejecutan a nivel de campo. Por ejemplo: una validación de un campo que
solamente acepte números positivos. (id > 0)



Regla. Es la regla de validación, ejemplo: id > 0, si queremos que acepte valores positivos.
Mensaje. Es el mensaje personalizado que queremos que aparezca en pantalla a la hora de violarse la regla
de validación del campo. Ejemplo: “Solo se aceptan números positivos” (nota: el texto debe escribirse entre
comillas).
Valor predeterminado. Es un valor por defecto del campo (nota: se debe respetar el tipo de dato del Campo).
Definición de índices.
Luego de hacer la definición de los campos, pasamos a la definición de Índices de la tabla, que será muy importante
a la hora de crear las relaciones entre las tablas.
90
o
Nombre del Índice. Introducir el Nombre del archivo
índice, el cual es también conocido como TAG.
o
Tipo.
 Principal. Llave primaria.
 Candidato. Llave candidata
 Único. Llave única.
 Normal. Llave foránea.
o
Nombre de la expresión.
UTILIZA VISUAL FOX PRO
Actividad: 2
Acude al centro de cómputo de tu plantel y, en binas, realiza la siguiente práctica. No
olvides Guardar y, posteriormente, presentar a tu profesor.
a) Crea una carpeta con el nombre mi_primer_proyecto, enseguida utilizando el menú Archivo y la opción
Nuevo crea un proyecto y llámalo proyecto_inicial. Comenta tu experiencia con tus compañeros y el
profesor, finalmente, escribe tus conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
b) En la carpeta mi_primer_proyecto, crea una base de datos con el nombre alumnos_cobach. Comenta tu
experiencia con tus compañeros y profesor, finalmente, escribe tus conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
Evaluación
Actividad: 2
Producto: Ejercicio práctico.
Saberes
Procedimental
Conceptual
Reconoce las herramientas del
Visual Fox Pro, para crear
Proyectos y Bases de Datos.
Coevaluación
BLOQUE 2
Actitudinal
Analiza y emplea las herramientas
de Visual Fox Pro, para la creación
de Proyectos y Bases de Datos.
C
MC
NC
Puntaje:
Se esmera en la realización de la
práctica.
Calificación otorgada por el
docente
91
Actividad: 3
Acude al centro de cómputo de tu plantel y, en binas, realiza la siguiente práctica. No
olvides Guardar y presentar a tu profesor.
a) Crea una Tabla con el nombre alumnos, con los siguientes campos: matrícula, nombre, apellido paterno,
apellido materno, fecha de nacimiento, dirección, colonia, teléfono, correo electrónico y semestre. Guarda la
tabla en la carpeta mi_primer_proyecto. Comenta tu experiencia con tus compañeros y profesor. Escribe tus
conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
b) Captura información en la tabla alumnos, de tu grupo. Posteriormente comenta tu experiencia con tus
compañeros y el profesor. Escribe tus conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
Evaluación
Actividad: 3
Producto: Ejercicio práctico.
Saberes
Procedimental
Conceptual
Reconoce las herramientas del
Visual Fox Pro, para crear
Tablas.
Coevaluación
92
Actitudinal
Analiza y emplea las herramientas
de Visual Fox Pro, para la creación
de Tablas.
C
MC
NC
Puntaje:
Atiende las indicaciones del
docente para la realización de la
práctica.
Calificación otorgada por el
docente
UTILIZA VISUAL FOX PRO
Utiliza formulario.
Dentro del Proyecto tenemos otra pestaña denominada
Documentos, la cual contiene Formularios, Informes y Etiquetas.
La forma más sencilla y funcional de crear un formulario es
mediante el asistente.
Al momento de pulsar el botón Asistente para
formularios se deben seguir las indicaciones
que presenta.
A continuación se selecciona la opción de
Asistente para formularios y, posteriormente,
damos clic en el botón Aceptar.
A continuación el Visual FoxPro presenta los
pasos para crea un Formulario, utilizando el
asistente.
1.
BLOQUE 2
Es importante conocer los datos que
necesitamos para crear el formulario,
primero debe seleccionarse la tabla y,
posteriormente, los campos que van a ser
incluidos en el formulario.
93
Agregar un campo a la vez.
Agregar todos los campos a la vez.
Quitar un campo a la vez.
Quitar varios campos a la vez.
2.
Después de la selección del campo que será incluido en el formulario, pasamos al paso número dos pulsando el
botón de siguiente que nos presenta el asistente de formularios.
En esta ventana el asistente nos permite seleccionar
el estilo de nuestro formulario el cual puede ser:









Estándar.
Cincelado.
Sombreado.
Enmarcado.
En relieve.
Sofisticado.
Piedra.
Flax.
Multicolor.
Así mismo, nos permite seleccionar el tipo de botón
que se va a mostrar en el formulario. Además nos
presenta los botones de Anterior para regresar al
paso uno o en su defecto pasar al paso tres.
3.
En este paso debemos decidir cuáles son los campos o etiquetas que serán índices para ordenar el registro.
De la misma forma que en el paso
dos, seleccionamos el campo o
campos que vamos a utilizar para
ordenar los registros, lo cual puede
ser en orden Ascendente o
Descendente, según se requiera.
94
UTILIZA VISUAL FOX PRO
Agregamos el campo nombre, de esta
forma este campo será el que va a
ordenar de forma ascendente nuestro
formulario, posteriormente damos clic
en el botón siguiente.
4. Ya en el paso cuatro el asistente nos
presenta una serie de opciones en las
cuales primeramente se le debe
asignar un nombre a nuestro formulario
posteriormente nos da las opciones
de:
 Guardar el formulario para uso
posterior.
 Guardar y ejecutar el formulario.
 Guardar el formulario y modificarlo
en el diseñador de formularios.
Así mismo, nos presenta una vista preliminar.
El formulario nos presenta botones por medio de
los cuales podemos ir al primer registro, al último,
ir al siguiente o al anterior, buscar registros,
imprimir, agregar, eliminar y por supuesto salir del
formulario. Posteriormente debemos guardar el
formulario asignándole un nombre que lo distinga
y que esté relacionado con la información que en
él se manipula.
De esta forma por medio del formulario el Visual
Fox Pro permite manipular las tablas de datos.
BLOQUE 2
95
Actividad: 4
Acude al centro de cómputo y, en binas, realiza la siguiente práctica.
Crea una Formulario con el nombre control_alumnos, incluyendo los siguientes campos:
matrícula, nombre, apellido paterno, apellido materno, fecha de nacimiento, dirección, colonia, teléfono, correo
electrónico, semestre, serie (formación propedéutica) y capacitación para el trabajo. Guarda la tabla en la
carpeta mi_primer_proyecto. Comenta tu experiencia con tus compañeros y profesor. Finalmente, escribe tus
conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
___________________
Actividad: 4
Conceptual
Reconoce las herramientas del
Visual Fox Pro, para crear un
Formulario.
Coevaluación
96
Evaluación
Producto: Ejercicio práctico.
Saberes
Procedimental
Analiza y emplea las herramientas
de Visual Fox Pro, para la creación
de Formularios.
C
MC
NC
Puntaje:
Actitudinal
Atiende las indicaciones del
docente para la realización de la
práctica.
Calificación otorgada por el
docente
UTILIZA VISUAL FOX PRO
Crea informes.
Para crear Informes y generarlos, utilizaremos el asistente para informes.
Al seleccionar nos muestra una ventana en la cual se describe o
informa que vamos a crear un informe con formato a partir de una
única tabla. A continuación es necesario dar clic en el botón de
Aceptar, para iniciar con los seis pasos que nos llevan a generar
un informe.
1. En el área de Base de datos y tablas, se selecciona la base
de datos que contiene los campos que se van a incluir.
Posteriormente pulsar el botón siguiente.
Es importante indicar que si no tenemos campos
disponibles es porque no tenemos la base de datos o
tabla, seleccionada.
2. Agrupar los registros, de acuerdo a los requerimientos solicitados.
BLOQUE 2
97
3. Seleccionar la apariencia del informe.
En lo que se refiere al estilo, el asistente:
 Ejecutivo.
 Doble carta.
 Presentación.
 Con bandas.
 Informal.
4.
Elegir el diseño de nuestro informe, definiendo el número de columnas o filas, diseño del campo y orientación de
la hoja (ya sea horizontal o vertical).
5.
Ordenar los registros.
Si se desea ordenar los registros, se pueden utilizar de uno a tres campos. Seleccionar del área de campos
disponibles o etiquetas de índices, los campos que vamos a incluir en el informe, para llevar a cabo esta selección,
dar clic sobre el campo deseado y posteriormente pulsar el botón agregar. Además podemos ordenar nuestra
información del registro en orden ascendente o descendente, posteriormente debemos pulsar el botón siguiente para
continuar.
98
UTILIZA VISUAL FOX PRO
Si se desea quitar de esta área algún campo seleccionado, basta con pulsar el botón quitar.
6.
Asistente para informes, solicita el nombre que le vamos asignar a nuestro informe, no olvidar que debe ser de
acuerdo con la información que presenta el informe.
Además, después de asignarle el nombre debemos guardar el informe:



Guardar el informe para uso posterior.
Guardar el informe y modificarlo en el diseñador de informes.
Guardar e imprimir el informe.
Es importante antes de finalizar el proceso tener un panorama de nuestro informe, para ello debemos pulsar el botón
de vista preliminar.
BLOQUE 2
99
La ventana Vista preliminar de informes presenta:







Primera página
Ir a la página
Página siguiente
Última página
Zoom
Cerrar vista previa
Imprimir informe
Para Guardar el informe debemos asignarle un nombre, el cual es de tipo FRX.
100
UTILIZA VISUAL FOX PRO
Actividad: 5
Acude al centro de cómputo y, en binas, realiza la siguiente práctica. Preséntala a tu
profesor.
a) Crea un Informe con el nombre reporte_alumnos_fec, incluyendo los siguientes campos: matrícula, nombre,
apellido paterno, apellido materno y fecha de nacimiento. Guarda la tabla en la carpeta mi_primer_proyecto.
Comenta tu experiencia con tus compañeros y el profesor. Finalmente, escribe tus conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
b) Crea un Informe con el nombre reporte_alumnos_tel, incluye los siguientes campos: matrícula, nombre,
apellido paterno, apellido materno y teléfono. Guarda la tabla en la carpeta mi_primer_proyecto. Comenta tu
experiencia con tus compañeros y profesor. Finalmente, escribe tus conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
c) Crea un Informe con el nombre reporte_alumnos_sem, incluye los campos matricula, nombre, apellido
paterno, apellido materno y semestre. Guarda la tabla en la carpeta mi_primer_proyecto. Posteriormente
comenta tu experiencia con tus compañeros y docente. Escribe tus conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
BLOQUE 2
101
Actividad: 5 (continuación)
d) Crea un Informe con el nombre reporte_alumnos_dir, incluyendo los campos: matrícula,
nombre, apellido paterno, apellido materno y dirección. Guarda la tabla en la carpeta
mi_primer_proyecto. Comenta tu experiencia con tus compañeros y profesor. Finalmente
escribe tus conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
e) Crea un Informe con el nombre reporte_alumnos_correo, incluyendo los campos: matrícula, nombre, apellido
paterno, apellido materno y correo electrónico. Guarda la tabla en la carpeta mi_primer_proyecto. Comenta
tu experiencia con tus compañeros y profesor. Finalmente, escribe tus conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
Actividad: 5
Evaluación
Producto: Ejercicio práctico.
Saberes
Procedimental
Conceptual
Reconoce las herramientas del
Visual FoxPro, para crear un
Formulario.
Coevaluación
102
Actitudinal
Analiza y emplea las herramientas
de Visual FoxPro, para la creación
de Formularios.
C
MC
NC
Puntaje:
Atiende las indicaciones del
docente para la realización de la
práctica.
Calificación otorgada por el
docente
UTILIZA VISUAL FOX PRO
Utiliza la herramienta consulta.
Para crear consultas y generarlas, se utiliza el asistente de consultas.
Seleccionar menú Archivo/Nuevo, Posteriormente, seleccionar la opción
Consulta.
Visual presenta una ventana de selección de los
asistentes.
o
o
o
Asistente para consultas.
Asistente para gráfico.
Asistente para tablas de referencia cruzadas.
1. Seleccionar la base de datos o tabla en la cual se va
a llevar a cabo la consulta, se debe tener en cuenta
la carpeta donde se encuentran los archivos del
proyecto.
BLOQUE 2
103
2. Se busca la carpeta, y después
seleccionar la base de datos, pulsar
el botón aceptar.
Es importante conocer los datos que se necesitan para
realizar la consulta, debemos primero seleccionar la
tabla, posteriormente los campos que van a ser
incluidos en la consulta.
Ejemplo:
En la base de datos DATOS1, seleccionar la tabla
ALUMNOS, formada por los campos: Nombre,
Apellido_paterno, Apellido_materno, Fecha_nacimiento,
Dirección y Teléfono. Vamos a realizar la consulta,
utilizando el campo Nombre, posteriormente, pulsar el
botón Siguiente.
104
UTILIZA VISUAL FOX PRO
3.
Establecer los criterios de consulta. En esta
ventana el asistente presenta tres áreas
importantes que son: campo, operador y
valor, además del botón Vista previa.
a.
Primeramente en el área de Campo
tenemos.
Donde ALUMNOS es la tabla y NOMBRE es el
campo por medio del cual vamos a llevar a
cabo la consulta.
b. En el área de Operador, establece
condición de búsqueda.
Para llevar a cabo la búsqueda se selecciona una de las condiciones que presenta el operador.
A continuación se define el Valor de la información que se va a buscar.
Es importante escribir el valor que se va a consultar, respetando las letras mayúsculas y las letras minúsculas, de igual
forma los caracteres especiales. Pulsar el botón vista previa para ver el panorama de la consulta.
BLOQUE 2
105
Utilizar los operadores lógicos, para llevar a cabo búsquedas basadas en dos registros.
Primeramente establecer los campos que se van a incluir en la búsqueda.
En seguida se define el Operador y el valor.
Ejemplo 1:
Para realizar la búsqueda de todos los registros con el
nombre Ricardo y dirección en Ruiz Cortínez.
Ejemplo 2:
Consulta es la búsqueda por apellido.
106
UTILIZA VISUAL FOX PRO
Actividad: 6
Acude al centro de cómputo para realiza la siguiente práctica en binas y preséntala a tu
profesor.
a) Crea una Consulta con de la tabla alumnos, por medio del campo matrícula. Comenta tu experiencia con tus
compañeros y profesor. Finalmente escribe tus conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
b) Crea una Consulta con de la tabla alumnos, por medio del campo apellido paterno. Comenta tu experiencia
con tus compañeros y el profesor. Finalmente escribe tus conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
c) Crea una Consulta en la tabla alumnos, por medio de los campos matrícula y nombre. Comenta tu
experiencia con tus compañeros y profesor. Finalmente, escribe tus conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
BLOQUE 2
107
Actividad: 6 (continuación)
d) Crea una Consulta con de la tabla alumnos, por medio del campos matricula o teléfono.
Posteriormente comenta tu experiencia con tus compañeros y docente. Escribe tus
conclusiones.
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
e) ¿Qué diferencia existe al utilizar AND u OR en una consulta?
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
Actividad: 6
Conceptual
Reconoce las herramientas del
Visual Fox Pro, al realizar una
consulta.
Autoevaluación
108
Evaluación
Producto: Ejercicio práctico.
Saberes
Procedimental
Analiza y emplea las herramientas
de Visual Fox Pro, para llevar a
cabo una búsqueda.
C
MC
NC
Puntaje:
Actitudinal
Atiende las indicaciones del
docente para la realización de la
práctica.
Calificación otorgada por el
docente
UTILIZA VISUAL FOX PRO
Cierre
Actividad: 7
En equipo de cinco integrantes, elabora una base de datos para el control de
medicamentos de una farmacia, estableciendo medicamentos controlados y no
controlados.
Captura veinte productos y aplica: Formularios, Informes y Consultas.
Guarda en un CD, para entregar al profesor.
BLOQUE 2
109
Actividad: 7 (continuación)
Actividad: 7
Conceptual
Reconoce los asistentes del
Visual FoxPro, para la
manipulación de una base de
datos.
Coevaluación
110
Evaluación
Producto: Ejercicio práctico.
Saberes
Procedimental
Analiza y emplea los asistentes de
Visual Fox Pro, para utilizar una
base de datos.
C
MC
NC
Puntaje:
Actitudinal
Atiende las indicaciones del
docente para la realización de la
práctica.
Calificación otorgada por el
docente
UTILIZA VISUAL FOX PRO
Generalidades de programación de base de datos.
Competencias profesionales:



Desarrolla documentos electrónicos, de acuerdo con los requerimientos establecidos (software).
Localiza, obtiene información y se comunica utilizando las tecnologías de la información y de
comunicación (software).
Resuelve problemas de procesamiento de información utilizando lenguajes, manejadores de bases de
datos y metodologías, de acuerdo con los requerimientos del usuario (software).
Unidad de competencia:
Identifica los objetivos y ventajas de la utilización de sistemas de gestión de bases de datos, y analiza las
estructuras de diseño de archivos, para su operación, manejo, desarrollo y mantenimiento, según los
requerimientos de la normalización de una base de datos.
Atributos a desarrollar en el bloque:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Enfrenta las dificultades que se le presentan y es consciente de sus valores, fortalezas y debilidades.
Administra los recursos disponibles teniendo en cuenta las restricciones para el logro de sus metas.
Elige alternativas y cursos de acción con base en criterios sustentados y en el marco de un proyecto
de vida.
Aplica distintas estrategias comunicativas según quienes sean sus interlocutores, el contexto en el
que se encuentra y los objetivos que persigue.
Maneja las tecnologías de la información y la comunicación para obtener información y expresar
ideas.
Sigue instrucciones y procedimientos de manera reflexiva, comprendiendo como cada uno de sus
pasos contribuye al alcance de un objetivo.
Ordena información de acuerdo a categorías, jerarquías y relaciones.
Utiliza las tecnologías de la información y comunicación para procesar e interpretar información.
Elige las fuentes de información más relevantes para un propósito específico y discrimina entre ellas
de acuerdo a su relevancia y confiabilidad.
Estructura ideas y argumentos de manera clara, coherente y sintética.
Define metas y da seguimiento a sus procesos de construcción de conocimiento.
Identifica las actividades que le resultan de menor y mayor interés y dificultad, reconociendo y
controlando sus reacciones frente a retos y obstáculos.
Articula saberes de diversos campos y establece relaciones entre ellos y su vida cotidiana.
Propone maneras de solucionar un problema o desarrollar un proyecto en equipo, definiendo un
curso de acción con pasos específicos.
Aporta puntos de vista con apertura y considera los de otras personas de manera reflexiva.
Asume una actitud constructiva, congruente con los conocimientos y habilidades con los que cuenta
dentro de distintos equipos de trabajo.
Tiempo asignado: 20 horas
Secuencia didáctica 1.
Introducción a los lenguajes de programación.
Inicio

Actividad: 1
Responde las siguientes preguntas donde expreses tu opinión y experiencia sobre el
tema solicitado. Escribe tus repuestas.
1. Define Lenguaje.
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
2. Define Lenguaje de Programación.
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
3.
Menciona tres lenguajes de programación.
a) __________________________________________________________________________________________
b) __________________________________________________________________________________________
c) __________________________________________________________________________________________
4.
Explica brevemente la diferencia entre Algoritmo y Diagrama de Flujo.
__________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
__________________________________________________________________________________________________
Actividad: 1
Conceptual
Reconoce los términos sobre los
lenguajes de programación.
Autoevaluación
112
Evaluación
Producto: Cuestionario.
Saberes
Procedimental
Puntaje:
Actitudinal
Analiza los conceptos de lenguajes
de programación.
C
MC
NC
Atiende las indicaciones del
profesor.
Calificación otorgada por el
docente
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Desarrollo
Definición de lenguaje de programación.
Un lenguaje de programación es aquel elemento dentro de la
informática que nos permite crear programas mediante un
conjunto de instrucciones, operadores y reglas de sintaxis; que
pone a disposición del programador para que este pueda
comunicarse con los dispositivos hardware y software
existentes.
Tipos de lenguajes de programación.
Lenguajes de bajo nivel.
Son lenguajes totalmente dependientes de la máquina, es decir que el programa que se realiza con este tipo de
lenguajes no se puede migrar o utilizar en otras máquinas.
Al estar prácticamente diseñados a medida del hardware, aprovechan al máximo las características del mismo.
Dentro de este grupo se encuentran:




El lenguaje maquina: Este lenguaje ordena a la máquina las operaciones fundamentales para su funcionamiento.
Consiste en la combinación de 0's y 1's para formar las ordenes entendibles por el hardware de la máquina.
Este lenguaje es mucho más rápido que los lenguajes de alto nivel.
La desventaja es que son bastantes difíciles de manejar y usar, además de tener códigos fuente enormes donde
encontrar algún error es casi imposible.
El lenguaje ensamblador es un derivado del lenguaje máquina y está formado por abreviaturas de letras y
números llamadas mnemotécnicos. Con la aparición de este lenguaje se crearon los programas traductores para
poder pasar los programas escritos en lenguaje ensamblador a lenguaje máquina. Como ventaja con respecto al
código máquina es que los códigos fuentes eran más cortos y los programas creados ocupaban menos
memoria. Las desventajas de este lenguaje siguen siendo prácticamente las mismas que las del lenguaje
ensamblador, añadiendo la dificultad de tener que aprender un nuevo lenguaje difícil de probar y mantener.
Lenguajes de alto nivel.
Son aquellos que se encuentran más cercanos al lenguaje natural que al
lenguaje máquina.
Están dirigidos a solucionar problemas mediante el uso de EDD's.
Se tratan de lenguajes independientes de la arquitectura de la
computadora. Por lo que, en principio, un programa escrito en un lenguaje
de alto nivel, lo puedes migrar de una máquina a otra sin ningún tipo de
problema.
Estos lenguajes permiten al programador olvidarse por completo del
funcionamiento interno de la maquina(s) para la que están diseñando el
programa. Tan solo necesitan un traductor que entiendan el código fuente
como las características de la máquina.
BLOQUE 3
¿Sabías que…
EDD's son las abreviaturas de
Estructuras Dinámicas de Datos,
algo muy utilizado en todos los
lenguajes de programación. Son
estructuras que pueden cambiar
de tamaño durante la ejecución
del programa. Nos permiten
crear estructuras de datos que
se adapten a las necesidades
reales de un programa.
113
Lenguajes de medio nivel.
Estos lenguajes se encuentran en un punto medio entre los dos anteriores. Dentro de estos lenguajes podría situarse
el lenguaje C ya que puede acceder a los registros del sistema, trabajar con direcciones de memoria, todas ellas
características de lenguajes de bajo nivel y a la vez realizar operaciones de alto nivel.
HTML.
HTML (Hyper Text Markup Language) es un lenguaje sencillo que permite describir hipertexto, es decir, texto
presentado de forma estructurada, con enlaces (hyperlinks) que conducen a otros documentos o fuentes de
información relacionadas, y con inserciones multimedia (gráficos, sonido...). HTML no es técnicamente un lenguaje de
programación sino un lenguaje de marcas (tags) de formato sobre un texto. Dichas marcas son interpretadas por un
visualizador (en este caso el navegador o browser) para mostrar el resultado final del formateo.
Visual FoxPro.
Es un lenguaje estructurado en un entorno de desarrollo donde ciertas tareas son
asignadas a grupos de instrucciones llamadas programas. Además, Fox ofrece un
acceso de información, bastante sencillo y fácil, incluso a las personas sin
experiencia en programación.
Visual Basic.
Visual-Basic es una herramienta de diseño de aplicaciones para Windows, en la que estas se desarrollan
en una gran parte a partir del diseño de una interface gráfica. En una aplicación Visual - Basic, el programa
está formado por una parte de código puro, y otras partes asociadas a los objetos que forman la interface
gráfica. Es por tanto un término medio entre la programación tradicional, formada por una sucesión lineal
de código estructurado, y la programación orientada a objetos. Combina ambas tendencias. Ya que no
podemos decir que Visual Basic pertenezca por completo a uno de esos dos tipos de programación,
debemos inventar una palabra que la defina: Programación Visual.
114
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Actividad: 2
Acude al centro de cómputo y en binas realiza la siguiente investigación, posteriormente
participa en un debate grupal.
Completa la siguiente tabla sobre los tipos de programación.
Tipos de Programación
Definición
Programación
Estructurada.
Programación Modular.
Programación Orientada a
Objetos.
Programación
Concurrente.
Programación Funcional.
Programación Lógica.
Actividad: 2
Conceptual
Reconoce los tipos de
Programación.
Coevaluación
BLOQUE 3
Evaluación
Producto: Tabla.
Saberes
Procedimental
Puntaje:
Actitudinal
Analiza los tipos de Programación.
C
MC
NC
Muestra interés durante el
desarrollo de la investigación.
Calificación otorgada por el
docente
115
Visual Studio.
Microsoft Visual Studio es un entorno de desarrollo integrado (IDE, por sus
siglas en inglés) para sistemas operativos Windows. Soporta varios
lenguajes de programación tales como Visual ++, Visual C#, Visual J#,
ASP.NET y Visual Basic.NET, aunque actualmente se han desarrollado las
extensiones necesarias para muchos otros.
Visual Studio permite a los desarrolladores crear aplicaciones, sitios y
aplicaciones web, así como servicios web en cualquier entorno que soporte la plataforma .NET (a partir de la versión
net 2002). Así se pueden crear aplicaciones que se intercomuniquen entre estaciones de trabajo, páginas web y
dispositivos móviles.
Adicionalmente, Microsoft ha puesto gratuitamente a disposición de todo el mundo una versión reducida de MS SQL
Server llamada SQL Server Express Edition cuyas principales limitaciones son que no soporta bases de datos
superiores a 4 GB de tamaño, únicamente utiliza un procesador y un Gb de Ram, y no cuenta con el Agente de SQL
Server.
Visual Studio 2010 es la versión más reciente de esta herramienta, acompañada por .NET Framework 4.0.
SQL.
El lenguaje de consulta estructurado o SQL (por sus siglas en inglés
Structured Query Language) es un lenguaje declarativo de acceso a bases de
datos relacionales que permite especificar diversos tipos de operaciones en
éstas. Una de sus características es el manejo del álgebra y el cálculo
relacional permitiendo efectuar consultas con el fin de recuperar -de una
forma sencilla- información de interés de una base de datos, así como
también hacer cambios sobre ella.
El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y potencia de los sistemas relacionales
permitiendo gran variedad de operaciones. Es un lenguaje declarativo de "alto nivel", que gracias a su fuerte base
teórica y su orientación al manejo de conjuntos de registros, permite una alta productividad en codificación y la
orientación a objetos. De esta forma una sola sentencia puede equivaler, a una o más, que se utilizarían en un
lenguaje de bajo nivel orientado a registros.
El objetivo principal de SQL es la realización de consultas y cálculos con los datos de una o varias tablas.
Para bases de datos con grandes cantidades de datos y usuarios, es recomendable utilizar el sistema Microsoft SQL
Server ya que su principal función es ser una potente base de datos, capaz de trabajar en sí misma o bien con
conexión a otros lenguajes de programación tales como, Visual Basic 6.0 o Visual Basic .NET. Además se puede
realizar consultas directas a las tablas contenidas mediante instrucciones SQL. Internamente trae consigo el lenguaje
Visual Basic Application (VBA) el cual es similar en forma al Visual Basic 6.0.
Como su nombre indica, el SQL nos permite realizar consultas a la base de datos, además SQL además realiza
funciones de definición, control y gestión de la base de datos. Las sentencias SQL se clasifican según su finalidad
dando origen a tres sub lenguajes:

116
El DDL (Data Description Language), lenguaje de definición de datos, incluye órdenes para definir, modificar o
borrar las tablas en las que se almacenan los datos y de las relaciones entre estas. (Es el que más varia de un
sistema a otro)
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS

El DCL (Data Control Language), lenguaje de control de datos, contiene elementos útiles para trabajar en un
entorno multiusuario, en el que es importante la protección de los datos, la seguridad de las tablas y el
establecimiento de restricciones en el acceso, así como elementos para coordinar la compartición de datos
por parte de usuarios concurrentes, asegurando que no interfieren unos con otros.

El DML (Data Manipulation Language), lenguaje de manipulación de datos, nos permite recuperar los datos
almacenados en la base de datos y también incluye órdenes para permitir al usuario actualizar la base de
datos añadiendo nuevos datos, suprimiendo datos antiguos o modificando datos previamente almacenados.
Cierre

Actividad: 3
Acude al centro de cómputo y en binas realiza la siguiente investigación, posteriormente
participa en un debate grupal.
1.
Completa la siguiente tabla sobre las sentencias de los sub lenguajes DDL y DML.
Sub
Lenguajes
Sentencia
Función
Create Tabla
Create Index
DDL
Drop Table
Drop Index
Truncate
Insert
Delete
DML
Update
Select
Rollback
BLOQUE 3
117
Actividad: 3 (continuación)
2. Contesta las siguientes preguntas.
a) ¿Qué diferencia existe entre Programación Estructurada y Programación Modular?
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
b) ¿Cuál es la diferencia principal entre la Programación Orientada a Objeto y la Programación Concurrente?
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
_________________________________________________________________________________________________
Evaluación
Actividad: 3
Producto: Tabla.
Saberes
Procedimental
Conceptual
Reconoce las sentencias DDL y
DML.
Autoevaluación
118
Puntaje:
Actitudinal
Analiza la función de las sentencias
DDL y DML
C
MC
NC
Participa activamente durante la
investigación y el debate.
Calificación otorgada por el
docente
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Secuencia didáctica 2.
Operaciones básicas de una base de datos
en Microsoft Access.
Inicio

Actividad: 1
Completa la siguiente tabla, sobre la cinta de opciones de Microsoft Access,
posteriormente participa en un debate grupal.
Fichas de la Cinta de Opciones
En esta columna escribe los bloques de cada Ficha
Archivo
Inicio
Crear
Datos Externos
Herramientas de Bases de Datos
Campos
Tablas
Evaluación
Actividad: 1
Producto: Tabla.
Saberes
Procedimental
Conceptual
Reconoce los elementos de las
fichas de la cinta de opciones.
Autoevaluación
BLOQUE 3
Puntaje:
Actitudinal
Analiza los elementos de las fichas
de la cinta de opciones.
C
MC
NC
Atiende las indicaciones del
profesor.
Calificación otorgada por el
docente
119
Desarrollo
Introducción a tablas en Microsoft Access.
Microsoft Access es un programa, utilizado en los sistemas operativos Microsoft
Windows, para la gestión de Bases de Datos, creado y modificado por Microsoft, y
orientado a ser usado en entornos personales o en pequeñas organizaciones. Es un
componente de la suite Microsoft Windows. Permite crear archivos de bases de datos
relacionales que pueden ser fácilmente gestionadas por una interfaz gráfica sencilla.
Además, estas bases de datos pueden ser consultadas por otros programas. Dentro
de un sistema de información, entraría dentro de la categoría de gestión, y no en la de
ofimática, como podría pensarse. Este programa permite manipular los datos en
forma de tablas (formadas por filas y columnas), crear relaciones entre tablas,
consultas, formularios e informes, para presentar la información.
A partir del estándar cada sistema ha desarrollado su propio SQL que puede variar de un sistema a otro, pero con
cambios que no suponen ninguna complicación para alguien que conozca un SQL concreto, como el que vamos a
ver aquí correspondiente al Access 2000.
A continuación te presentamos una tabla de diferencias entre el Microsoft Access y el SQL Server.
Características
Access
SQL Server
Bajo
Muy alto
Arquitectura Cliente-Servidor.
No
Si
Número de usuarios conectados.
255
Ilimitado.
Límite de usuarios concurrentes.
255
Ilimitado.
Registro de transacciones.
No
Si
Seguridad integrada.
No
Procesamiento
de
consulta
más
rápido.
Restauración de datos.
Sí. A nivel de SQL y de Sistema
Operativo.
Recupera a partir de la última copia
Cualquier día y hora de copias
de seguridad.
anteriores.
Administración remota de la Base de
No es posible. Solo se puede
Datos.
compartir a través de una Red.
Si
Funciones.
No
Si
Meta Datos.
No
Si
120
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Cinta de opciones de Microsoft Access.
En Microsoft Access 2010, la ventana principal está distribuida en fichas de la siguiente manera:







Archivo.
Inicio.
Crear.
Datos externos.
Herramientas de base de datos.
Campos.
Tabla.
Ficha Crear.
Esta ficha se utiliza para el manejo de tablas ya que podemos implementar:





Consultas.
Formularios.
Informes.
Tablas.
Macros y Códigos.
BLOQUE 3
121
Crear tabla.
Antes de iniciar el proceso de crear una tabla se debe definir perfectamente su estructura.
Los pasos para el proceso son:
1.
Dar clic en la ficha crear.
Ficha crear.
2. Dar clic en el elemento tabla.
Elemento tabla.
122
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
3. Agregar los campos, primero seleccione el tipo de campo, posteriormente escriba el nombre.
Tipos de campos.
4. Se escribe el nombre del campo.
Nombre del campo.
Posteriormente se capturan los datos de los campos, por ejemplo:
Clave, Nombre, A_Paterno, A_Materno, Teléfono y Electrónico.
BLOQUE 3
123
5. Guardamos los datos, por lo tanto le asignamos el nombre a la tabla.
Clic para guardar.
Posteriormente le asignamos el nombre a nuestra tabla, recordemos que una base de datos consta de varias tablas,
por lo tanto es importante asignarle un nombre que corresponda a la información almacenada en la tabla.
Nombre asignado a la tabla.
124
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Es importante que recuerdes que la base de datos puede tener varias tablas, por lo tanto debes guardar la base de
datos.
Indica que la base de datos no se ha guardado, por eso le
asigna el nombre Database12.
Posteriormente damos clic en el menú Archivo.
Le asignamos el
nombre a la base
de datos.
BLOQUE 3
125
Actividad: 2
Acude al centro de cómputo y en binas crea una tabla en Microsoft Access de nombre
Agenda, con los siguientes campos: Clave, Nombre, Apellido Paterno, Apellido
Materno, Teléfono y Correo Electrónico. Presenta un reporte de la práctica a tu
profesor.
Evaluación
Actividad: 2
Producto: Reporte de Practica.
Puntaje:
Saberes
Conceptual
Identifica los pasos necesarios
para elaborar una tabla en
Microsoft Access.
Coevaluación
126
Procedimental
Actitudinal
Crea los campos y registros de una
tabla mediante el programa
Access.
C
MC
NC
Muestra interés al realizar la
práctica.
Calificación otorgada por el
docente
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Ficha de inicio.
En esta ficha están distribuidos los bloques:






Vista.
Portapapeles.
Ordenar y filtrar.
Registros.
Buscar.
Formato de Texto.
Bloque vista.
Este bloque es de suma importancia ya que presenta vistas muy útiles para tener un mejor panorama de
nuestro proyecto.
A continuación presentamos algunas vistas.
Vistas del Bloque Ver de la
Ficha de Inicio, antes de
guardar una Tabla.
BLOQUE 3
127
Vistas generadas de una tabla desde la Ficha de Inicio y de la Ficha de Diseño, después de guardarla.
Vista hoja de datos.
Esta vista es la más recomendable para la captura de datos de la Tabla.
128
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Vista tabla dinámica.
Vista de diseño.
Para ver la estructura de la tabla, damos clic en Vista Diseño.
BLOQUE 3
129
Estructura de la Tabla.
Vista SQL.
Puedes ver o editar la instrucción SQL en la vista SQL. Sin embargo, después de hacer cambios en una consulta en la
vista SQL, puede que su aspecto no sea el que tenía en la Vista Diseño.
130
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Al dar clic sobre SQL Vista SQL, tendremos acceso al código que genera consulta el cual puede ser es desarrollado
en los lenguajes: Visual Basic, SQL, etc.
Desde la vista SQL se pueden generar los códigos que se requieran para personalizar alguna consulta, formulario o
informe. De igual forma se puede crear una tabla, agregar campos, insertar registros, eliminar registros, etc.
Ejecutar un código en vista SQL.
Para observar el resultado del código solo se deben seguir dos pasos:
1.
Dar clic en el icono Ejecutar.
2.
Posteriormente observamos el resultado de la ejecución del código.
BLOQUE 3
131
Identifica los requerimientos mínimos de un proyecto.
No existe un parámetro para determinar los requerimientos mínimos que debe tener un proyecto pero es
recomendable al menos contar con una:

Tabla.

Consulta.

Informe.
Realiza consultas en Access.
Las consultas SQL son creadas con unas instrucciones propias de SQL. Se puede utilizar el lenguaje de consulta
estructurado SQL para consultar, actualizar y administrar bases de datos relacionales, como Microsoft Access.
Cuando se crea una consulta en la vista de diseño de la consulta, Access construye en segundo plano las
instrucciones SQL equivalentes. De hecho, la mayoría de las propiedades de consulta de la hoja de propiedades de la
vista Diseño de la consulta tienen cláusulas y opciones equivalentes a las que están disponibles en la vista SQL.
Para realizar una consulta Access presenta dos opciones: Asistente para Consultas y Diseño de Consulta, vamos a
utilizar la segunda opción, para ello seguiremos los siguientes pasos:
1.
132
Selecciona Diseño de consulta.
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
2. Para obtener la vista de diseño damos clic en Vista Diseño.
3. Debemos seleccionar la tabla, y posteriormente da clic en el botón Agregar, cerramos el cuadro de dialogo
dando clic en el botón Cerrar.
Botón Agregar.
BLOQUE 3
Botón Cerrar.
133
4. Seleccionamos los campos que se van a incluir en la consulta.
Campos de la Tabla,
Agenda_2011.
Menú contextual, de
Campos disponibles, para
la consulta.
Casillas de Verificación, indican que estos campos
están seleccionados en la consulta.
134
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
5. Para ejecutar la consulta damos clic en el Icono Ejecutar.
6. Vista después de la Consulta.
BLOQUE 3
135
Actividad: 3
Acude al centro de cómputo y en binas utiliza una tabla en Microsoft Access de nombre
Agenda_2011, para crear una consulta donde presentes todos los campos,
posteriormente utiliza la Vista SQL y escribe el código que presenta, coméntalo con tu
profesor.
Evaluación
Actividad: 3
Producto: Ejercicio práctico.
Conceptual
Identifica el predicado del
lenguaje SQL.
Coevaluación
136
Puntaje:
Saberes
Procedimental
Actitudinal
Analiza el predicado del Lenguaje
SQL.
C
MC
NC
Atiende las indicaciones del
docente para la realización de la
práctica.
Calificación otorgada por el
docente
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Utiliza el asistente de formularios.
En el bloque de formulario ahí varias opciones para el desarrollo de los mismos estas son:

Formulario.

Diseño del formulario.

Formulario en blanco.

Asistente para formularios.

Navegación y más formularios.
BLOQUE 3
137
Vamos a utilizar el Asistente de formulario para aplicarlo a la tabla de Agenda_2011.
Para ello seguiremos los siguientes pasos:
1. Seleccionamos la Tabla.
Clic para seleccionar.
2. Clic en el Asistente de formularios.
3. En el cuadro de dialogo del Asistente para formularios seleccionamos los campos que vamos a incluir en el
formulario.
Selector Campo por
Campo.
Selector todos los
campos a la vez.
138
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Campos
Seleccionados.
4. Después de dar clic en el botón siguiente, en el cuadro de dialogo del Asistente se define la distribución de
los campos seleccionados en el formulario.
BLOQUE 3
139
5. Pulsamos clic en siguiente y a continuación le asignamos el nombre al formulario y para terminar damos clic
en el botón Finalizar.
Botón Finalizar.
La vista de nuestro Formulario ya terminado es la siguiente.
Botones para desplazarnos por los
registros de la Tabla.
140
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Utiliza el Asistente de Informes.
Este asistente permite generar reportes de los campos de la base de datos seleccionada. En el bloque de Informes
ahí varias opciones para generar reportes:

Informe.

Diseño de Informe.

Informe en blanco.

Asistente para Informes y Etiquetas.
BLOQUE 3
141
Para generar un informe utilizando el asistente seguiremos los siguientes pasos:

Seleccionar la Tabla.

Damos clic en el Icono del Asistente para Informes.

En el cuadro de dialogo del asistente para informes seleccionar los campos que se van a incluir.
Campos disponibles de la Tabla
Seleccionada.
Selectores de Campos.
142
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Campos seleccionados.
Botón siguiente.

Después de dar clic en el botón siguiente, el Asistente para Informes pregunta si se desea agregar algún
agrupamiento.
Campos para agrupar.
Botones para agrupar
campos.
BLOQUE 3
143

A continuación se definen los criterios de ordenación que se desea utilizar para los registros.
Campos para
ordenar.
Nivel de ordenación.

144
En seguida definimos la distribución y orientación de los campos seleccionados.
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS

Le asignamos el nombre a nuestro informe y lo podemos visualizar en vista previa o en su defecto damos clic
en el botón Finalizar.
Asignamos el
nombre.





















Finalmente obtenemos la Vista Preliminar.
BLOQUE 3
145
Cierre
Actividad: 4
Acude al centro de cómputo y en binas crea una tabla en Microsoft Access de nombre
Agenda_2011, con los siguientes campos: Clave, Nombre, Apellido Paterno, Apellido
Materno, Teléfono y Correo Electrónico. Posteriormente crea una consulta, un
formulario y un informe, presenta un reporte de la práctica a tu profesor.
Evaluación
Actividad: 4
Producto: Ejercicio práctico.
Conceptual
Identifica los elementos
necesarios para crear un
proyecto.
Coevaluación
146
Puntaje:
Saberes
Procedimental
Actitudinal
Analiza la información que se utiliza
para la estructura del proyecto.
C
MC
NC
Atiende las indicaciones del
docente para la realización de la
práctica.
Calificación otorgada por el
docente
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Secuencia didáctica 3.
Programación básica en SQL.
Inicio

Actividad: 1
Responde las siguientes preguntas donde expreses tu opinión y experiencia sobre el
tema solicitado. Escribe tus repuestas.
1.
¿Qué es un Sistema de Gestión de Base de Datos?
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
2.
Menciona tres ventajas de los manejadores de bases de datos.
a) __________________________________________________________________________________________
b) __________________________________________________________________________________________
c) __________________________________________________________________________________________
3.
¿Qué diferencia existe entre SQL y el SQL server?
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
__________________________________________________________________________________________________
Actividad: 1
Conceptual
Reconoce los conceptos
básicos de los lenguajes de
programación.
Autoevaluación
BLOQUE 3
Evaluación
Producto: Cuestionario.
Saberes
Procedimental
Puntaje:
Actitudinal
Analiza los conceptos básicos de
los lenguajes de programación.
C
MC
NC
Contesta responsablemente el
cuestionario y participa en un
debate grupal.
Calificación otorgada por el
docente
147
Desarrollo
¿Qué es el SQL?
Las aplicaciones en red son cada día más numerosas y versátiles. En muchos casos, el esquema básico de
operación es una serie de scripts que rigen el comportamiento de una base de datos.
Debido a la diversidad de lenguajes y de bases de datos existentes, la manera de comunicar entre unos y otras sería
realmente complicada a gestionar de no ser por la existencia de estándares que nos permiten el realizar las
operaciones básicas de una forma universal.
Structured Query Language (SQL) es un lenguaje estándar de comunicación con bases de datos. Hablamos por tanto
de un lenguaje normalizado que nos permite trabajar con cualquier tipo de lenguaje (ASP o PHP) en combinación con
cualquier tipo de base de datos (MS Access, SQL Server, MySQL...).
El hecho de que sea estándar no quiere decir que sea idéntico para cada base de datos. En efecto, determinadas
bases de datos implementan funciones específicas que no tienen necesariamente que funcionar en otras.
Aparte de esta universalidad, el SQL posee otras dos características muy apreciadas. Por una parte, presenta una
potencia y versatilidad notables que contrasta, por otra, con su accesibilidad de aprendizaje.
¿Qué es un ODBC?
Es un estándar de acceso a bases de datos que utilizan los sistemas Microsoft. Las siglas significan Open DataBase
Connectivity. A través de ODBC, en un sistema Windows se puede conectar con cualquier base de datos. Bueno
habría que decir que permite conectar con cualquier base de datos de la que exista un driver ODBC. Los creadores
de las distintas bases de datos son los responsables de crear un driver ODBC para que su base de datos se pueda
conectar desde un sistema Microsoft.
Para conectar con ODBC una base de datos se ha de crear un DSN, que es un nombre que asociamos a una
conexión por ODBC para referirnos a ella desde las aplicaciones o programas que deban conectarse con la base de
datos.
Un DSN (Data Source Name) que en español, Nombre Fuente de Datos o Nombre de Origen de Datos, que
representa todo lo relativo a una fuente de datos configurada por el usuario para conectarse a una Base de datos.
Cualquier base de datos que se pretenda utilizar desde aplicaciones Windows debe tener su propio driver ODBC. Por
ejemplo, MySQL dispone de un Driver ODBC que se puede descargar desde su página web. Las bases de datos
Access (Microsoft Jet) y SQL Server de Microsoft también tienen su driver ODBC y este ya se encuentra instalado en el
Windows de fábrica.
Características del lenguaje.
Una sentencia SQL es como una frase (escrita en inglés) con la que decimos lo que queremos obtener y de donde
obtenerlo.
Todas las sentencias empiezan con un verbo (palabra reservada que indica la acción a realizar), seguido del resto de
cláusulas, algunas obligatorias y otras opcionales que completan la frase. Todas las sentencias siguen una sintaxis
para que se puedan ejecutar correctamente, para describir esa sintaxis utilizaremos un diagrama sintáctico como el
que se muestra a continuación.
148
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Tipos de campos.
Como sabemos una base de datos está compuesta de tablas donde almacenamos registros catalogados en función
de distintos campos (características).
Un aspecto previo a considerar es la naturaleza de los valores que introducimos en esos campos. Dado que una base
de datos trabaja con todo tipo de informaciones, es importante especificarle qué tipo de valor le estamos
introduciendo de manera a, por un lado, facilitar la búsqueda posteriormente y por otro, optimizar los recursos de
memoria.
Cada base de datos introduce tipos de valores de campo que no necesariamente están presentes en otras. Sin
embargo, existe un conjunto de tipos que están representados en la totalidad de estas bases. Estos tipos comunes
son los siguientes:
Alfanuméricos
Contienen cifras y letras. Presentan una longitud limitada (255 caracteres)
Numéricos
Existen de varios tipos, principalmente, enteros (sin decimales) y reales (con decimales).
Booleanos
Poseen dos formas: Verdadero y falso (Sí o No)
Fechas
Almacenan fechas facilitando posteriormente su explotación. Almacenar fechas de esta
forma posibilita ordenar los registros por fechas o calcular los días entre una fecha y otra...
Memos
Son campos alfanuméricos de longitud ilimitada. Presentan el inconveniente de no poder
ser indexados (veremos más adelante lo que esto quiere decir).
Son campos numéricos enteros que incrementan en una unidad su valor para cada registro
Autoincrementables incorporado. Su utilidad resulta más que evidente: Servir de identificador ya que resultan
exclusivos de un registro.
Actividad: 2
En binas, completa lo que a continuación se te solicita, posteriormente preséntalo a tu
profesor.
Completa la siguiente tabla sobre los tipos de Campos.
Tipos de Campos
Descripción
Alfanuméricos
Numéricos
BLOQUE 3
149
Actividad: 2 (continuación)
Tipos de Campos
Descripción
Booleanos
Fechas
Memos
Autoincrementables
Actividad: 2
Conceptual
Reconoce los tipos de campos
del SQL.
Coevaluación
150
Evaluación
Producto: Tabla.
Saberes
Procedimental
Puntaje:
Analiza los tipos de campos del
SQL.
C
MC
NC
Actitudinal
Atiende las indicaciones del
docente para completar los
cuadros, participa en el debate
grupal.
Calificación otorgada por el
docente
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Tipos de datos SQL.
Los tipos de datos SQL se clasifican en 13 tipos de datos primarios y de varios sinónimos válidos reconocidos por
dichos tipos de datos. Los tipos de datos primarios son:
Tipo de Datos
Longitud
Descripción
BINARY
1 byte
Para consultas sobre tabla adjunta de productos de bases de datos que definen un
tipo de datos Binario.
BIT
1 byte
Valores Si/No o True/False
BYTE
1 byte
Un valor entero entre 0 y 255.
COUNTER
4 bytes
Un número incrementado automáticamente (de tipo Long)
CURRENCY
8 bytes
Un entero escalable entre 922.337.203.685.477,5808 y 922.337.203.685.477,5807.
DATETIME
8 bytes
Un valor de fecha u hora entre los años 100 y 9999.
SINGLE
4 bytes
Un valor en punto flotante de precisión simple con un rango de - 3.402823*1038 a 1.401298*10-45 para valores negativos, 1.401298*10- 45 a 3.402823*1038 para
valores positivos, y 0.
DOUBLE
8 bytes
Un valor en punto flotante de doble precisión con un rango de 1.79769313486232*10308 a -4.94065645841247*10-324 para valores negativos,
4.94065645841247*10-324 a 1.79769313486232*10308 para valores positivos, y 0.
SHORT
2 bytes
Un entero corto entre -32,768 y 32,767.
LONG
4 bytes
Un entero largo entre -2,147,483,648 y 2,147,483,647.
LONGTEXT
1 byte por
carácter
De cero a un máximo de 1.2 gigabytes.
LONGBINARY
Según se
necesite
De cero 1 gigabyte. Utilizado para objetos OLE.
TEXT
1 byte por
carácter
De cero a 255 caracteres.
BLOQUE 3
151
La siguiente tabla recoge los sinónimos de los tipos de datos definidos:
152
Tipo de Dato
Sinónimos
BINARY
VARBINARY
BIT
BOOLEAN
LOGICAL
LOGICAL1
YESNO
BYTE
INTEGER1
COUNTER
AUTOINCREMENT
CURRENCY
MONEY
DATETIME
DATE
TIME
TIMESTAMP
SINGLE
FLOAT4
IEEESINGLE
REAL
DOUBLE
FLOAT
FLOAT8
IEEEDOUBLE
NUMBER
NUMERIC
SHORT
INTEGER2
SMALLINT
LONG
INT
INTEGER
INTEGER4
LONGBINARY
GENERAL
OLEOBJECT
LONGTEXT
LONGCHAR
MEMO
NOTE
TEXT
ALPHANUMERIC
CHAR - CHARACTER
STRING - VARCHAR
VARIANT (No Admitido)
VALUE
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Actividad: 3
Lee el tema “Tipos de datos SQL”, Posteriormente, coloca la letra en el paréntesis
correspondiente.
A)
Un entero corto entre -32,768 y 32,767.
(
)
TEXT
B)
Un valor entero entre 0 y 255.
(
)
COUNTER
C)
De cero a 255 caracteres.
(
)
LONG
D)
Un entero largo entre -2, 147, 483,648 y 2,
147, 483,647.
(
)
SHORT
E)
Un número incrementado
automáticamente. (de tipo Long)
(
)
BIT
F)
De cero a un máximo de 1.2 gigabytes.
(
)
BINARY
G)
Para consultas sobre tabla adjunta de
productos de bases de datos que definen
un tipo de datos Binario.
(
)
BYTE
H)
Valores Si/No o True/False.
(
)
LONGTEXT
Actividad: 3
Conceptual
Reconoce los tipos de datos de
datos de SQL.
Autoevaluación
BLOQUE 3
Evaluación
Producto: Relación.
Saberes
Procedimental
Puntaje:
Actitudinal
Analiza los tipos de datos de SQL.
C
MC
NC
Muestra interés y actitud positiva
en el desarrollo de la actividad.
Calificación otorgada por el
docente
153
Tipos de sentencias y sus componentes sintácticos.
En SQL tenemos bastantes sentencias que se pueden utilizar para realizar diversas tareas.
Dependiendo de las tareas, estas sentencias se pueden clasificar en tres grupos principales (DML, DDL,DCL), aunque
nos quedaría otro grupo que no está dentro del lenguaje SQL sino del PLSQL.
Sentencia
DML
Manipulación de datos
SELECT
INSERT
DELETE
UPDATE
Recupera datos de la base de datos.
Añade nuevas filas de datos a la base de datos.
Suprime filas de datos de la base de datos.
Modifica datos existentes en la base de datos.
DDL
Definición de datos
CREATE TABLE
DROP TABLE
ALTER TABLE
CREATE VIEW
DROP VIEW
CREATE INDEX
DROP INDEX
CREATE SYNOYM
DROP SYNONYM
Añade una nueva tabla a la base de datos.
Suprime una tabla de la base de datos.
Modifica la estructura de una tabla existente.
Añade una nueva vista a la base de datos.
Suprime una vista de la base de datos.
Construye un índice para una columna.
Suprime el índice para una columna.
Define un alias para un nombre de tabla.
Suprime un alias para un nombre de tabla.
DCL
Control de acceso
GRANT
REVOKE
Control de transacciones
COMMIT
ROLLBACK
SQL Programático
DECLARE
PLSQL OPEN
FETCH
CLOSE
154
Descripción
Concede privilegios de acceso a usuarios.
Suprime privilegios de acceso a usuarios
Finaliza la transacción actual.
Devuelve a un estado precio a la transacción actual.
Define un cursor para una consulta.
Abre un cursor para recuperar resultados de consulta.
Recupera una fila de resultados de consulta.
Cierra un cursor.
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Componentes sintácticos.
La mayoría de sentencias SQL tienen la misma estructura.
Todas comienzan por un verbo (select, insert, update, create), a continuación le sigue una o más cláusulas que nos
dicen los datos con los que vamos a operar (from, where), algunas de estas son opcionales y otras obligatorias como
es el caso del from.
Interpretar un diagrama sintáctico.
Las palabras que aparecen en mayúsculas son palabras
reservadas se tienen que poner tal cual y no se pueden
utilizar para otro fin, por ejemplo, en el diagrama de la
figura tenemos las palabras reservadas SELECT, ALL,
DISTINCT, FROM, WHERE.
Las palabras en minúsculas son variables que el usuario
deberá sustituir por un dato concreto. En el diagrama
tenemos nbcolumna, expresión-tabla y condición-debúsqueda.
Una sentencia válida se construye siguiendo la línea a
través del diagrama hasta el punto que marca el final. Las
líneas se siguen de izquierda a derecha y de arriba abajo.
Cuando se quiere alterar el orden normal se indica con
una flecha.
Pasos para estructurar la sentencia SELECT en SQL.
1.
2.
3.
4.
5.
Utilizar la sentencia SELECT.
Nombre de los campos de la tabla.
Utilizar la palabra reservada FROM.
Incluir la Cláusula WHERE.
Definir la condición de búsqueda.
Ejemplos de la sentencia SELECT:
a) Select All col1, col2, col3 From mitabla
b) Select Distinct col1 From mitabla
c) Select col1, col2 From mitabla Where col2 = 0
BLOQUE 3
155
Actividad: 4
En binas acude al centro de cómputo e investiga la utilidad de los sinónimos de los
tipos de datos de SQL, posteriormente participa en un debate grupal.
Tipo de Dato
Sinónimos
BIT
BOOLEAN
LOGICAL
LOGICAL1
YESNO
COUNTER
AUTOINCREMENT
DATETIME
DATE
TIME
TIMESTAMP
TEXT
ALPHANUMERIC
CHAR - CHARACTER
STRING - VARCHAR
SINGLE
FLOAT4
IEEESINGLE
REAL
LONG
INT
INTEGER
INTEGER4
LONGTEXT
LONGCHAR
MEMO
NOTE
Actividad: 4
Conceptual
Reconoce la utilidad de los
sinónimos de los tipos de datos
de SQL.
Coevaluación
156
Utilidad
Evaluación
Producto: Tabla.
Saberes
Procedimental
Puntaje:
Actitudinal
Analiza la utilidad de los sinónimos
de los tipos de datos de SQL.
C
MC
NC
Muestra interés y actitud positiva
en el desarrollo de la actividad.
Calificación otorgada por el
docente
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Actividad: 5
En equipo mixtos de tres, completa el cuadro sobre Tipos de Sentencias.
Sentencia
Grupo
Descripción
SELECT
CREATE TABLE
GRANT
INSERT
DROP TABLE
REVOKE
DECLARE
Actividad: 5
Conceptual
Identifica los grupos de las
sentencias de SQL.
Coevaluación
BLOQUE 3
Evaluación
Producto: Tabla.
Saberes
Procedimental
Puntaje:
Actitudinal
Describe las sentencias de SQL.
C
MC
NC
Es eficiente en el trabajo
colaborativo.
Calificación otorgada por el
docente
157
Código SQL para crear una tabla.
En general, la mayoría de las bases de datos poseen potentes editores de bases que permiten la creación rápida y
sencilla de cualquier tipo de tabla con cualquier tipo de formato.
Sin embargo, una vez la base de datos está alojada en el servidor, puede darse el caso de que queramos introducir
una nueva tabla ya sea con carácter temporal (para gestionar un carrito de compra por ejemplo) o bien permanente
por necesidades concretas de nuestra aplicación.
En estos casos, podemos, a partir de una sentencia SQL, crear la tabla con el formato que deseemos lo cual nos
puede ahorrar más de un problema.
Este tipo de sentencias son especialmente útiles para bases de datos como Mysql, las cuales trabajan directamente
con comandos SQL y no por medio de editores.
Para crear una tabla debemos especificar diversos datos: El nombre que le queremos asignar, los nombres de los
campos y sus características. Además, puede ser necesario especificar cuáles de estos campos van a ser índices y
de qué tipo van a serlo.
La sintaxis de creación puede variar ligeramente de una base de datos a otra ya que los tipos de campo aceptados
no están completamente estandarizados.
A continuación los explicamos la sintaxis para la creación de una Tabla y posteriormente presentamos ejemplos
prácticos:
Sintaxis.
Create Table nombre_tabla
(
nombre_campo_1 tipo_1
nombre_campo_2 tipo_2
nombre_campo_n tipo_n
Key (campo_x,...)
)
158
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Pongamos ahora como ejemplo la creación de la tabla pedidos.
En este ejemplo creamos los campos IdPedido, IdCliente, IdArticulo, Cantidad y Total los cuales son considerados de
tipo entero de una longitud especificada por el número entre paréntesis. Por otra parte, para evitar un mensaje de
error, es necesario requerir que los campos que van a ser definidos como índices no puedan ser nulos (NOT NULL).
El campo Fecha es almacenado con formato de fecha (DATE) para permitir su correcta explotación a partir de las
funciones previstas a tal efecto.
Por ejemplo para crear una tabla de artículos utilizaremos la siguiente rutina:
En las sentencias vemos que los campos alfanuméricos son introducidos de la misma forma que los numéricos.
Volvemos a recordar que en tablas que tienen campos comunes es de vital importancia definir estos campos de la
misma forma para el buen funcionamiento de la base.
BLOQUE 3
159
Muchas son las opciones que se ofrecen al generar tablas. Estos son algunos de los tipos de campos que pueden ser
empleados en la creación de tablas con sus características:
Tipo
Int o Integer
Bytes
4
Double o
Real
Char
Varchar
Date
Blob
Bit o
Boolean
8
1/carácter
1/caracter+1
3
1/caracter+2
1
Descripción
Números enteros. Existen otros tipos de mayor o menor longitud específicos de cada
base de datos.
Números reales (grandes y con decimales). Permiten almacenar todo tipo de número
no entero.
Alfanuméricos de longitud fija predefinida
Alfanuméricos de longitud variable
Fechas, existen múltiples formatos específicos de cada base de datos
Grandes textos no indexables.
Almacenan un bit de información (verdadero o falso)
En la terminología usada en SQL no se alude a las relaciones, del mismo modo que no se usa el término atributo, pero
sí la palabra columna, y no se habla de tupla, sino de línea.
Sintaxix para crea tablas nuevas
Create Table tabla (campo1 tipo (tamaño) índice1, campo2 tipo (tamaño) índice2,..., índice multicampo,..)
En donde:
tabla
campo1
campo2
tipo
tamaño
índice1
índice2
índice
multicampos
Es el nombre de la tabla que se va a crear.
Es el nombre del campo o de los campos que se van a crear en la nueva tabla. La nueva tabla
debe contener, al menos, un campo.
Es el tipo de datos de campo en la nueva tabla. (Ver Tipos de Datos)
Es el tamaño del campo sólo se aplica para campos de tipo texto.
Es una cláusula CONSTRAINT que define el tipo de índice a crear. Esta cláusula en opcional.
Es una cláusula CONSTRAINT que define el tipo de índice multicampos a crear. Un índice
multicampo es aquel que está indexado por el contenido de varios campos. Esta cláusula en
opcional.
Ejemplos, para crear una tabla:
1)
Crea una nueva tabla llamada Empleados con dos campos, uno llamado Nombre de
tipo texto y longitud 25 y otro llamado apellidos con longitud 50.
160
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
2)
Crea una nueva tabla llamada Empleados con un campo Nombre de tipo texto y longitud 10, otro con llamado Apellidos de
tipo texto y longitud predeterminada (50) y uno más llamado FechaNacimiento de tipo Fecha/Hora. También crea un índice
único - no permite valores repetidos - formado por los tres campos.
3)
Crea una tabla llamada Empleados con un campo Texto de longitud predeterminada (50) llamado Nombre y otro igual
llamado Apellidos, crea otro campo llamado FechaNacimiento de tipo Fecha/Hora y el campo IdEmpleado de tipo entero
el que establece como clave principal.
BLOQUE 3
161
La cláusula CONSTRAINT.
Se utiliza la cláusula CONSTRAINT en las instrucciones ALTER TABLE y CREATE TABLE para crear o eliminar índices.
Existen dos sintaxis para esta cláusula dependiendo si desea Crear o Eliminar un índice de un único campo o si se
trata de un campo multiíndice. Si se utiliza el motor de datos de Microsoft, sólo podrá utilizar esta cláusula con las
bases de datos propias de dicho motor. Para los índices de campos únicos:
Constraint nombre {Primary Key | Unique | References tabla externa [(campo externo1, campo externo2)]}
Para los índices de campos múltiples:
Constraint nombre {Primary Key (primario1 [, primario2 [,...]]) |Unique (único1 [, único2 [, ...]]) |
Foreign Key (ref1[, ref2 [,...]]) References tabla externa [(campo externo1 ,campo externo2 [,...])]}
En donde:
nombre
primarioN
únicoN
refN
tabla externa
campos
externos
Es el nombre del índice que se va a crear.
Es el nombre del campo o de los campos que forman el índice primario.
Es el nombre del campo o de los campos que forman el índice de clave única.
Es el nombre del campo o de los campos que forman el índice externo (hacen referencia a campos
de otra tabla).
Es el nombre de la tabla que contiene el campo o los campos referenciados en refN
Es el nombre del campo o de los campos de la tabla externa especificados por ref1, ref2,... , refN
Si se desea crear un índice para un campo cuando se está utilizando las instrucciones ALTER TABLE o CREATE TABLE
la cláusula CONTRAINT debe aparecer inmediatamente después de la especificación del campo indexado.
Si se desea crear un índice con múltiples campos cuando se está utilizando las instrucciones ALTER TABLE o CREATE
TABLE la cláusula CONSTRAINT debe aparecer fuera de la cláusula de creación de tabla.
Índice
Unique
Primary
Key
Foreign
Key
162
Descripción
Genera un índice de clave única. Lo que implica que los registros de la tabla no pueden contener el mismo
valor en los campos indexados.
Genera un índice primario el campo o los campos especificados. Todos los campos de la clave principal
deben ser únicos y no nulos, cada tabla sólo puede contener una única clave principal.
Genera un índice externo (toma como valor del índice campos contenidos en otras tablas). Si la clave
principal de la tabla externa consta de más de un campo, se debe utilizar una definición de índice de
múltiples campos, listando todos los campos de referencia, el nombre de la tabla externa, y los nombres
de los campos referenciados en la tabla externa en el mismo orden que los campos de referencia listados.
Si los campos referenciados son la clave principal de la tabla externa, no tiene que especificar los campos
referenciados, predeterminado por valor, el motor Jet se comporta como si la clave principal de la tabla
externa estuviera formada por los campos referenciados.
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Actividad: 6
En Binas, realiza la siguiente práctica, verifica que no tengas errores en la sintaxis.
Posteriormente preséntalo a tu profesor.
1) Escribe las instrucciones para crear una tabla, con las siguientes condiciones.
 Nombre de la Tabla Agenda.
 Campos de la Tabla Matricula, Nombre, Apellido Paterno, Apellido Materno, Semestre, Serie, Teléfono,
Correo Electrónico.
BLOQUE 3
163
Actividad: 6 (continuación)
2) Escribe las instrucciones para crear una tabla, con las siguientes condiciones:



Nombre de la Tabla Agenda.
Campos de la Tabla Matricula, Nombre, Apellido Paterno, Apellido Materno, Semestre,
Serie, Teléfono, Correo Electrónico.
Utiliza la Cláusula Constraint, para crea un índice único – que no permita valores repetidos
– de los campos Matricula y Correo Electrónico.
Actividad: 6
Conceptual
Reconoce la sintaxis de la
sentencia Create Table.
Coevaluación
164
Evaluación
Producto: Reporte de Practica.
Saberes
Procedimental
Puntaje:
Actitudinal
Uyiliza la sentencia Create Table y
sus anexos.
C
MC
NC
Analiza de manera responsable
los ejercicios de la práctica.
Calificación otorgada por el
docente
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Crea índices en SQL.
Si se utiliza el motor de datos Jet de Microsoft sólo se pueden crear índices en bases
de datos del mismo motor. La sintaxis para crear un índice en una tabla ya definida en
la siguiente:
¿Sabías que…
El motor Jet son unas
librerías
DLL
que
vienen con el Windows
y sirven para mantener
los archivos .mdb.
Create [ Unique ] Index índiceON Tabla (campo [ASC|DESC][, campo
[ASC|DESC], ...]) [With {Primary | Disallow Null | Ignore Null}]
En donde:
índice
tabla
campo
ASC|DESC
Unique
Disallow
Null
Ignore Null
Primary
Es el nombre del índice a crear.
Es el nombre de una tabla existente en la que se creará el índice.
Es el nombre del campo o lista de campos que constituyen el índice.
Indica el orden de los valores de los campos ASC indica un orden ascendente (valor predeterminado) y
DESC un orden descendente.
Indica que el índice no puede contener valores duplicados.
Prohíbe valores nulos en el índice.
Excluye del índice los valores nulos incluidos en los campos que lo componen.
Asigna al índice la categoría de clave principal, en cada tabla sólo puede existir un único índice que sea
"Clave Principal". Si un índice es clave principal implica que no puede contener valores nulos ni
duplicados.
En el caso de Access, se puede utilizar Create Index para crear un pseudo índice sobre una tabla adjunta en una
fuente de datos ODBC tal como SQL Server que no tenga todavía un índice. No necesita permiso o tener acceso a
un servidor remoto para crear un pseudo índice, además la base de datos remota no es consciente y no es afectada
por el pseudo índice. Se utiliza la misma sintaxis para las tablas adjuntas que para las originales. Esto es
especialmente útil para crear un índice en una tabla que sería de sólo lectura debido a la falta de un índice.
Ejemplo:
1)
Crea un índice llamado MiIndice en la tabla empleados con los campos Clave y Teléfono.
BLOQUE 3
165
2)
Crea un índice en la tabla Empleados utilizando el campo IdEmpleado, obligando que el campo IdEmpleado no
contenga valores nulos ni repetidos.
Modifica el diseño de una tabla en SQL.
Modifica el diseño de una tabla ya existente, se pueden modificar los campos o los índices existentes. Su sintaxis es:
Alter Table tabla {Add {Column tipo de campo [(tamaño)][Constraint índice]Constraint índice multicampo}
| Drop {Column campo I Constraint nombre del índice}}
En donde:
tabla
campo
tipo
tamaño
índice
índice
multicampo
Operación
Add Column
Add
Drop Column
Drop
166
Es el nombre de la tabla que se desea modificar.
Es el nombre del campo que se va a añadir o eliminar.
Es el tipo de campo que se va a añadir.
Es el tamaño del campo que se va a añadir (sólo para campos de texto).
Es el nombre del índice del campo (cuando se crean campos) o el nombre del índice de la tabla
que se desea eliminar.
Es el nombre del índice del campo multicampo (cuando se crean campos) o el nombre del índice
de la tabla que se desea eliminar.
Descripción
Se utiliza para añadir un nuevo campo a la tabla, indicando el nombre, el tipo de campo y
opcionalmente el tamaño (para campos de tipo texto).
Se utiliza para agregar un índice de multicampos o de un único campo.
Se utiliza para borrar un campo. Se especifica únicamente el nombre del campo.
Se utiliza para eliminar un índice. Se especifica únicamente el nombre del índice a continuación de
la palabra reservada CONSTRAINT.
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
A continuación te presentamos los siguientes ejemplos:
1)
Agrega un campo Salario de tipo Moneda a la tabla Empleados.
2)
Elimina el campo Salario de la tabla Empleados.
3) Agrega un índice externo a la tabla Pedidos. El índice externo se basa en el campo IdEmpleado y se
refiere al campo IdEmpleado de la tabla Empleados. En este ejemplo no es necesario indicar el campo
junto al nombre de la tabla en la cláusula REFERENCES, pues ID_Empleado es la clave principal de la
tabla Empleados.
BLOQUE 3
167
4)
Elimina el índice de la tabla Pedidos.
Introduce registros en una tabla en SQL.
Los registros pueden ser introducidos a partir de sentencias que emplean la instrucción Insert.
La sintaxis es la siguiente:
Insert Into nombre_tabla (nombre_campo1, nombre_campo2,...) Values (valor_campo1, valor_campo2...)
Ejemplo.
Los campos no numéricos o booleanos van delimitados por apostrofes: '.
Borrar registros en una tabla en SQL.
Para borrar un registro nos servimos de la instrucción Delete. En este caso debemos especificar cual o cuales son los
registros que queremos borrar. Es por ello necesario establecer una selección que se llevara a cabo mediante la
cláusula Where.
Sintaxis.
Delete From nombre_tabla Where condiciones_de_selección
168
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Ejemplo para borrar todos los registros de los clientes que se llamen Pedro lo haríamos del siguiente modo:
Hay que tener cuidado con esta instrucción ya que si no especificamos una condición con Where, lo que estamos
haciendo es borrar toda la tabla:
Edita registros en una tabla en SQL.
Update es la instrucción que nos sirve para modificar nuestros registros. Es necesario especificar por medio de Where
cuáles son los registros en los que queremos hacer efectivas nuestras modificaciones.
Obviamente, tendremos que especificar cuáles son los nuevos valores de los campos que deseamos actualizar.
Sintaxis.
Update nombre_tabla Set nombre_campo1 = valor_campo1, nombre_campo2 = valor_campo2,... Where
condiciones_de_selección
Ejemplo.
Realiza selecciones eficientemente.
La selección total o parcial de una tabla se lleva a cabo mediante la instrucción Select. En dicha selección hay que
especificar:


Los campos que queremos seleccionar.
La tabla en la que hacemos la selección.
BLOQUE 3
169
Por ejemplo una selección del nombre y dirección de los clientes con una instrucción de este tipo:
Para seleccionar todos los campos, es decir, toda la tabla, podríamos utilizar el comodín * del siguiente modo:
Resulta también muy útil el filtrar los registros mediante condiciones que vienen expresadas después de la cláusula
Where. Si quisiésemos mostrar los clientes de una determinada ciudad usaríamos una expresión como esta:
Además, podríamos ordenar los resultados en función de uno o varios de sus campos. Para este último ejemplo los
podríamos ordenar por nombre así:
Teniendo en cuenta que puede haber más de un cliente con el mismo nombre, podríamos dar un segundo criterio que
podría ser el apellido:
170
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Crea el código para consultas básicas en SQL.
La sintaxis básica de una consulta de selección es la siguiente:
Select
Campos From
Tabla
Ejemplo:
Esta sentencia devuelve un conjunto de resultados con el campo nombre y teléfono de la tabla clientes.
Utiliza el código en SQL para actualizar una base de datos.
Crea una consulta de actualización que cambia los valores de los campos de una tabla especificada basándose en
un criterio específico.
Su sintaxis es:
Update Tabla Set Campo1=Valor1, Campo2=Valor2, CampoN=ValorN
Where Criterio
Update es especialmente útil cuando se desea cambiar un gran número de registros o cuando éstos se encuentran
en múltiples tablas. Puede cambiar varios campos a la vez.
En el ejemplo siguiente se incrementa los valores cantidad pedidos en un 10 por ciento y los valores Transporte en un
3 por ciento para aquellos que se hayan enviado al Estado de Sinaloa:
Si en una consulta de actualización suprimimos la cláusula Where todos los registros de la tabla señalada serán
actualizados.
BLOQUE 3
171
Cierre
Actividad: 7
En Binas, realiza la siguiente práctica, posteriormente asiste al centro de cómputo,
captura las instrucciones en SQL y verifica que no tengas errores en la sintaxis.
Posteriormente entrega el reporte a tu profesor.
1)
Escribe las instrucciones para insertar en la tabla Agenda el campo Capacitación.
2)
Escribe las instrucciones para Borrar de la tabla Agenda el campo Serie.
3)
Escribe las instrucciones para Modificar en la tabla Agenda el campo específico.
4)
Escribe las instrucciones para Actualizar en la tabla Agenda el campo Semestre el cual debe incrementarse
en uno, cada vez que el alumno pase al siguiente semestre.
Actividad: 7
Conceptual
Reconoce la sintaxis de las
operaciones básicas de una
Tabla.
Coevaluación
172
Evaluación
Producto: Reporte de Practica.
Saberes
Procedimental
Puntaje:
Actitudinal
Analiza la utilidad de las
operaciones básicas de una tabla.
C
MC
NC
Muestra interés en la realización
de la práctica.
Calificación otorgada por el
docente
GENERALIDADES DE PROGRAMACIÓN DE BASE DE DATOS
Bibliografía
Diseño de base de datos, segunda edición.
Sistemas Operativos Stallines Cuarta edición.
http://www.pablin.com.ar/computer/cursos/vfoxpro/vfpoop02.htm
http://www.mygnet.net/manuales/foxpro/conceptos_basicos_de_vfp_6_dot_0.443
http://www.programatium.com/vfox/manual/index.htm
http://www.programatium.com/vfox/manual/vfox1.htm
http://geocities.ws/vidalreyna/FoxPro.html
http://www.inei.gob.pe/biblioineipub/bancopub/inf/lib5020/CAP-4-2.HTM
http://www.angelfire.com/sc2/oliver1473/guiavfp2.html
http://www.desarrolloweb.com/articulos/introduccion-base-datos.html
http://www.devjoker.com/contenidos/Iniciaci%C3%B3n-a-las-bases-de-datos/6/Introducci%C3%B3n-a-las-bases-dedatos.aspx
http://www.mailxmail.com/curso-introduccion-access/que-es-base-datos
http://www.mailxmail.com/curso-informatica-administracion-publica-3/bases-datos-concepto-caracteristicasfuncionalidades
http://www.alegsa.com.ar/Dic/redundancia%20de%20datos.php
http://www.maestrosdelweb.com/principiantes/%C2%BFque-son-las-bases-de-datos/
http://www3.uji.es/~mmarques/f47/apun/node39.html
http://www3.uji.es/~mmarques/f47/apun/node40.html
http://www.slideshare.net/Waleskita/diseo-de-archivos-y-base-de-datos-presentation
http://exa.exa.unne.edu.ar/depar/areas/informatica/SistemasOperativos/MonogSO/GESTAR02.htm
http://www.mailxmail.com/curso-diseno-base-datos-relacionales/diseno-conceptual-bases-datos-modelo-entidadrelacion
http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=346
http://www.maestrosdelweb.com/editorial/tutsql1/
http://personal.lobocom.es/claudio/sql001.htm
http://www.aulaclic.es/sql/f_sql.htm
http://www.aulaclic.es/sqlserver/t_1_2.htm
BLOQUE 3
173
Descargar