Sunteți pe pagina 1din 173

COLEGIO DE BACHILLERES DEL ESTADO DE SONORA

Director General Mtro. Julio Alfonso Martnez Romero Director Acadmico Dr. Manuel Valenzuela Valenzuela Director de Administracin y Finanzas C.P. Jess Urbano Limn Tapia Director de Planeacin Ing. Ral Leonel Durazo Amaya

GESTORES DE BASE DE DATOS Mdulo de Aprendizaje. Copyright , 2011 por Colegio de Bachilleres del Estado de Sonora todos los derechos reservados. Segunda edicin 2012. Impreso en Mxico. DIRECCIN ACADMICA Departamento de Desarrollo Curricular Blvd. Agustn de Vildsola, Sector Sur Hermosillo, Sonora. Mxico. C.P. 83280

COMISIN ELABORADORA: Elaborador: Ricardo Revilla Reyes Revisin Disciplinaria: Mara Enedina Duarte Camacho Correccin de Estilo: Flora Ins Cabrera Fregoso Apoyo Metodolgico: Mara Enedina Duarte Camacho Supervisin Acadmica: Mtra. Luz Mara Grijalva Daz Diseo: Mara Jess Jimnez Duarte Edicin: Francisco Peralta Varela Coordinacin Tcnica: Claudia Yolanda Lugo Peuri Diana Irene Valenzuela Lpez Coordinacin General: Dr. Manuel Valenzuela Valenzuela

Esta publicacin se termin de imprimir durante el mes de junio de 2012. Diseada en Direccin Acadmica del Colegio de Bachilleres del Estado de Sonora Blvd. Agustn de Vildsola; Sector Sur. Hermosillo, Sonora, Mxico La edicin consta de 1,299 ejemplares.

PRELIMINARES

DATOS DEL ALUMNO


Nombre: _______________________________________________________________ Plantel: __________________________________________________________________ Grupo: _________________ Turno: _____________ Telfono:___________________ E-mail: _________________________________________________________________ Domicilio: ______________________________________________________________ _______________________________________________________________________

Ubicacin Curricular
COMPONENTE:

FORMACIN PARA EL TRABAJO


CAPACITACIN PARA EL TRABAJO: INFORMTICA

HORAS SEMANALES:

03

CRDITOS:

06

PRELIMINARES

PRELIMINARES

ndice
Presentacin ..................................................................................................................................................................7 Mapa de asignatura .......................................................................................................................................................8 BLOQUE 1: SISTEMAS DE GESTORES DE BASES DE DATOS ......................................................................9 Secuencia Didctica 1: Introduccin a los sistemas de gestin de bases de datos ................................................ 10 Concepto de una base de datos ....................................................................................................................... 11 Caractersticas de las bases de datos ............................................................................................................... 12 Redundancia de datos ....................................................................................................................................... 12 Concepto de sistemas de gestin de base de datos ....................................................................................... 14 Objetivos de los sistemas de gestin de bases de datos ................................................................................ 14 Ventajas y/o desventajas ................................................................................................................................... 15 Funcin de los sistemas de gestin de bases de datos (SDGB) ..................................................................... 15 Componentes de un sistema de gestin de bases de datos ........................................................................... 21 Ejemplos de sistemas de gestin de bases de datos ...................................................................................... 22 Secuencia Didctica 2: Estructura y diseo de archivos ........................................................................................... 26 Organizacin bsica de un sistema de gestin de archivo .............................................................................. 27 Estructura del sistema de archivos .................................................................................................................... 30 Mtodos para la organizacin 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 dispersin ...................................................................................................................... 34 Secuencia Didctica 3: Estructura y diseo de bases de datos ............................................................................... 37 Introduccin a los sistemas de bases de datos ................................................................................................ 38 Estructura de una base de datos ....................................................................................................................... 38 Diseo de una base de datos ............................................................................................................................ 39 Actividades del diseo ....................................................................................................................................... 39 Arquitectura de los sistemas de gestin de bases de datos ............................................................................ 41 Lenguajes de los sistemas de gestin de bases de datos ............................................................................... 42 Lenguajes de definicin de datos ...................................................................................................................... 43 Lenguajes de manejo de datos ......................................................................................................................... 43 Lenguajes de cuarta generacin ....................................................................................................................... 44 Esquema de una base de datos ........................................................................................................................ 47 Modelos de datos .............................................................................................................................................. 47 Modelo Entidad-Relacin ................................................................................................................................... 48 Clasificacin de los sistemas de bases de datos ............................................................................................. 52 Fundamentos de normalizacin de una base de datos .................................................................................... 55 BLOQUE 2: UTILIZA VISUAL FOXPRO ............................................................................................................ 61 Secuencia Didctica 1: Introduccin al Visual FoxPro ............................................................................................... 62 Introduccin al Visual FoxPro ............................................................................................................................. 63 Programacin orientada a eventos .................................................................................................................... 63 Programacin orientada a objetos..................................................................................................................... 64 Caractersticas de la programacin orientada a objetos .................................................................................. 64 Tipos de generadores ........................................................................................................................................ 66 Utiliza los asistentes ........................................................................................................................................... 66 Estructura una .DBF ........................................................................................................................................... 66 Tipos de campos................................................................................................................................................ 67 Modo de operacin ............................................................................................................................................ 71 Introduccin a la interfaz de usuario de Microsoft Visual FoxPro ...................................................................... 71 Descripcin de los componentes de la ventana ............................................................................................... 74 Barra de men .................................................................................................................................................... 74 Operaciones bsicas ......................................................................................................................................... 77 Secuencia Didctica 2: Desarrollo de trabajo en Visual FoxPro ................................................................................ 83 Implementacin de un proyecto ........................................................................................................................ 84 Utiliza la ficha de datos ...................................................................................................................................... 85

PRELIMINARES

ndice (continuacin)
Crea una tabla en Visual FoxPro ........................................................................................................................ 86 Descripcin del rea mostrar ............................................................................................................................. 89 Definicin de reglas de validacin a nivel de campo ........................................................................................ 90 Definicin de ndices .......................................................................................................................................... 90 Utiliza formulario ................................................................................................................................................. 93 Crea informes ..................................................................................................................................................... 97 Utiliza la herramienta consulta ......................................................................................................................... 103

BLOQUE 3: GENERALIDADES DE PROGRAMACIN DE BASES DE DATOS .......................................... 111 Secuencia Didctica 1: Introduccin a los lenguajes de programacin ................................................................. 112 Definicin de lenguaje de programacin ......................................................................................................... 113 Tipos de lenguajes de programacin .............................................................................................................. 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 Didctica 2: Operaciones bsicas de una base de datos en Microsoft Access................................... 119 Introduccin 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 dinmica ......................................................................................................................................... 129 Vista de diseo ................................................................................................................................................. 129 Vista SQL .......................................................................................................................................................... 130 Ejecutar un cdigo en vista SQL...................................................................................................................... 131 Identifica los requerimientos mnimos de un proyecto ................................................................................... 132 Realiza consultas en Access ........................................................................................................................... 132 Utiliza el asistente de formularios .................................................................................................................... 137 Utiliza el Asistente de informes ........................................................................................................................ 141 Secuencia Didctica 3: Programacin bsica en SQL ............................................................................................ 147 Qu es el SQL? ............................................................................................................................................ 148 Qu es un ODBC? .......................................................................................................................................... 148 Caractersticas del lenguaje ............................................................................................................................. 148 Tipos de campos ............................................................................................................................................. 149 Tipos de datos SQL ......................................................................................................................................... 151 Tipos de sentencias y sus componentes sintcticos ...................................................................................... 154 Componentes sintcticos ................................................................................................................................ 155 Interpretar un diagrama sintctico ................................................................................................................... 155 Cdigo SQL para crear una Tabla ................................................................................................................... 158 La clusula CONSTRAINT ............................................................................................................................... 162 Crea ndices en SQL ........................................................................................................................................ 165 Modifica el diseo 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 cdigo para consultas bsicas en SQL ...................................................................................... 171 Utiliza el cdigo en SQL para actualizar una base de datos .................................................................. 171

Bibliografa........................................................................................................................................................ 173

PRELIMINARES

Presentacin
Una competencia es la integracin de habilidades, conocimientos y actitudes en un contexto especfico. El enfoque en competencias considera que los conocimientos por s mismos no son lo ms importante, sino el uso que se hace de ellos en situaciones especficas de la vida personal, social y profesional. De este modo, las competencias requieren una base slida de conocimientos y ciertas habilidades, los cuales se integran para un mismo propsito en un determinado contexto. El presente Mdulo 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, caractersticas que se establecen en los objetivos de la Reforma Integral de Educacin Media Superior que actualmente se est implementando a nivel nacional. El Mdulo de aprendizaje es uno de los apoyos didcticos que el Colegio de Bachilleres te ofrece con la intencin de estar acorde a los nuevos tiempos, a las nuevas polticas educativas, adems de lo que demandan los escenarios local, nacional e internacional; el mdulo se encuentra organizado a travs de bloques de aprendizaje y secuencias didcticas. Una secuencia didctica es un conjunto de actividades, organizadas en tres momentos: Inicio, desarrollo y cierre. En el inicio desarrollars actividades que te permitirn identificar y recuperar las experiencias, los saberes, las preconcepciones y los conocimientos que ya has adquirido a travs de tu formacin, mismos que te ayudarn a abordar con facilidad el tema que se presenta en el desarrollo, donde realizars actividades que introducen nuevos conocimientos dndote 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 didctica, donde integrars 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 caractersticas y del propsito de las actividades, stas se desarrollan de forma individual, binas o equipos. Para el desarrollo del trabajo debers utilizar diversos recursos, desde material bibliogrfico, videos, investigacin de campo, etc. La retroalimentacin de tus conocimientos es de suma importancia, de ah que se te invita a participar de forma activa, de esta forma aclarars dudas o bien fortalecers lo aprendido; adems en este momento, el docente podr tener una visin general del logro de los aprendizajes del grupo. Recuerda que la evaluacin en el enfoque en competencias es un proceso continuo, que permite recabar evidencias a travs de tu trabajo, donde se tomarn en cuenta los tres saberes: el conceptual, procedimental y actitudinal con el propsito de que apoyado por tu maestro mejores el aprendizaje. Es necesario que realices la autoevaluacin, este ejercicio permite que valores tu actuacin y reconozcas tus posibilidades, limitaciones y cambios necesarios para mejorar tu aprendizaje. As tambin, es recomendable la coevaluacin, proceso donde de manera conjunta valoran su actuacin, con la finalidad de fomentar la participacin, reflexin y crtica ante situaciones de sus aprendizajes, promoviendo las actitudes de responsabilidad e integracin 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 visin y actitud en cuanto a tu rol, es decir, de ser receptor de contenidos, ahora construirs tu propio conocimiento a travs de la problematizacin y contextualizacin de los mismos, situacin que te permitir: Aprender a conocer, aprender a hacer, aprender a ser y aprender a vivir juntos.

PRELIMINARES

Gestores de base de datos

Bloque 1. Sistemas de Gestores de Bases de Datos.

Bloque 2. Utiliza Visual FoxPro.

Bloque 3. Generalidades de Programacin de Bases de Datos.

Secuencia didctica 1. Introduccin a los sistemas de gestin de bases de datos.

Secuencia didctica 1. Introduccin al Visual FoxPro.

Secuencia didctica 1. Introduccin a los Lenguajes de Programacin.

Secuencia didctica 2. Estructura y diseo de archivos.

Secuencia didctica 2. Desarrollo de trabajo en Visual FoxPro.

Secuencia didctica 2. Operaciones bsicas de una base de datos en Microsoft Access.

Secuencia didctica 3. Estructuras y diseo de bases de datos.

Secuencia didctica 3. Programacin bsica en SQL.

PRELIMINARES

Sistemas de gestores de bases de datos.

Competencias profesionales:
Desarrolla documentos electrnicos, de acuerdo con los requerimientos establecidos (software). Localiza, obtiene informacin y se comunica utilizando las tecnologas de la informacin y de comunicacin (software). Resuelve problemas de procesamiento de informacin utilizando lenguajes, manejadores de bases de datos y metodologas, de acuerdo con los requerimientos del usuario (software).

Unidad de competencia:

Identifica los objetivos y ventajas de la utilizacin de sistemas de gestin de bases de datos, y analiza las estructuras de diseo de archivos, para su operacin, manejo, desarrollo y mantenimiento, segn los requerimientos de la normalizacin 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 accin con base en criterios sustentados y en el marco de un proyecto de vida. Aplica distintas estrategias comunicativas segn quienes sean sus interlocutores, el contexto en el que se encuentra y los objetivos que persigue. Maneja las tecnologas de la informacin y la comunicacin para obtener informacin y expresar ideas. Sigue instrucciones y procedimientos de manera reflexiva, comprendiendo como cada uno de sus pasos contribuye al alcance de un objetivo. Ordena informacin de acuerdo a categoras, jerarquas y relaciones. Utiliza las tecnologas de la informacin y comunicacin para procesar e interpretar informacin. Elige las fuentes de informacin ms relevantes para un propsito especfico y discrimina entre ellas de acuerdo a su relevancia y confiabilidad. Estructura ideas y argumentos de manera clara, coherente y sinttica. Define metas y da seguimiento a sus procesos de construccin de conocimiento. Identifica las actividades que le resultan de menor y mayor inters y dificultad, reconociendo y controlando sus reacciones frente a retos y obstculos. 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 accin con pasos especficos. 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 didctica 1. Introduccin a los sistemas de gestin 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 caractersticas manipulan grandes cantidades de informacin. __________________________________________________________________________________________________ __________________________________________________________________________________________________ __________________________________________________________________________________________________ 3. Escribe cinco ventajas que brinda la informtica en el almacenamiento y procesamiento de la informacin. __________________________________________________________________________________________________ __________________________________________________________________________________________________ __________________________________________________________________________________________________ 4. Qu es un sistema de informacin? __________________________________________________________________________________________________ __________________________________________________________________________________________________ __________________________________________________________________________________________________

Actividad: 1 Conceptual Reconoce el concepto y ventajas de un sistema de informacin. Autoevaluacin

Evaluacin Producto: Cuestionario. Saberes Procedimental Analiza el concepto y ventajas de un sistema de informacin. C MC NC

Puntaje: Actitudinal Participa de una manera activa y responsable en el desarrollo de la actividad y el debate grupal.

Calificacin otorgada por el docente

10

SISTEMAS DE GESTORES DE BASES DE DATOS

Desarrollo
Concepto de base de datos.
Seguro que en ms de una ocasin has odo hablar de las bases de datos, y tambin de modo intrnseco nos hemos hecho nuestra propia concepcin de lo que son. Cuando se habla informalmente de una base de datos, se hace referencia a una coleccin 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 compaa, una universidad o una institucin gubernamental. Los datos tambin pueden estar relacionados debido a que corresponden a cierta rea problema; tal vez acerca de una enfermedad que preocupa al personal de cierto nmero de hospitales. Los datos debern estar organizados de manera que sea posible procesarlos para obtener informacin. Una base de datos es un conjunto de archivos, destinados a almacenar informacin de manera sistemtica, en campos o delimitadores, teniendo acceso a ella posteriormente tanto en forma separada como conjunta. El trmino de bases de datos fue escuchado por primera vez en 1963, en un simposio celebrado en California, USA. A finales de los aos 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 informacin de una forma rpida, sencilla y fiable, y que a su vez pudieran acceder a ella en cualquier momento sin necesidad de desplazarse a salas dedicadas a archivar documentacin, como hasta hace poco se vena haciendo. Cuando comenz el despegue de los programas informticos se empezaron a almacenar datos en los archivos de los programas, lo cual era ms cmodo pero aun as tenan grandes dificultades a la hora de querer modificar registros, estructuras o simplemente buscar informacin.

BLOQUE 1

11

Caractersticas de las bases de datos.


Entre las principales caractersticas de los sistemas de base de datos podemos mencionar: Independencia lgica y fsica de los datos. Redundancia mnima. Acceso concurrente por parte de mltiples usuarios. Integridad de los datos. Consultas complejas optimizadas. Seguridad de acceso y auditora. Respaldo y recuperacin. Acceso a travs de lenguajes de programacin estndar.

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 ms 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 estn almacenados en varios lugares distintos, ocupando as ms bytes del medio de almacenamiento. Este problema es ms 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 diseada, no debera 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 investigacin. Elabora tu reporte de observaciones para comentarlo con tu profesor. 1. Cules son los datos que contiene la tarjeta de circulacin de un automvil?

_________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ 2. De los datos de la tarjeta de circulacin, cules piensas que son los ms importantes y porque?

_________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ 3. Cules de los datos de la tarjeta de circulacin se pueden repetir en otra u otras tarjetas de circulacin?

_________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ 4. Cules son los datos de una tarjeta de circulacin que no se pueden repetir en ninguna otra tarjeta de circulacin? _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ 5. Describe un escenario en el cual en un departamento de trnsito vehicular, exista la redundancia de datos.

_________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________

BLOQUE 1

13

Actividad: 2 Conceptual Reconoce las caractersticas de una base de datos, para evitar la redundancia. Coevaluacin

Evaluacin Producto: Trabajo de Investigacin. Saberes Procedimental Evala una base de datos para identificar si existe una redundancia de datos. C MC NC

Puntaje: Actitudinal Colabora con el equipo durante la investigacin.

Calificacin otorgada por el docente

Concepto de sistemas de gestin de base de datos.


Los sistemas de gestin de bases de datos (en ingls database management system, abreviado DBMS) son un tipo de software muy especfico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan.

Objetivos de los sistemas de gestin de base de datos.


Abstraccin de la informacin. Los sistemas de gestin de bases de datos ahorran a los usuarios detalles acerca del almacenamiento fsico 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 abstraccin. Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema (fsico o lgico) 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 informacin que aparece repetida se actualice de forma coherente, es decir, que todos los datos repetidos se actualicen de forma simultnea. 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 debera aceptar datos de un conductor menor de edad. En los sistemas de gestin de bases de datos existen herramientas que facilitan la programacin de este tipo de condiciones. Seguridad. La informacin almacenada en una base de datos puede llegar a tener un gran valor. los sistemas de gestin de bases de datos deben garantizar que esta informacin se encuentra segura de permisos a usuarios y grupos de usuarios, que permiten otorgar diversas categoras de permisos. Manejo de transacciones. Una transaccin es un programa que se ejecuta como una sola operacin. Esto quiere decir que luego de una ejecucin en la que se produce una falla es el mismo que se obtendra si el programa no se hubiera ejecutado. Los sistemas de gestin de bases de datos proveen mecanismos para programar las modificaciones de los datos de una forma mucho ms simple que si no se dispusiera de ellos. Tiempo de respuesta. Lgicamente, es deseable minimizar el tiempo que el sistema de gestin de bases de datos tarda en darnos la informacin solicitada y en almacenar los cambios realizados.

14

SISTEMAS DE GESTORES DE BASES DE DATOS

Ventajas.
1. Proveen facilidades para la manipulacin de grandes volmenes de datos. Entre stas: Simplifican la programacin de equipos de consistencia. Manejando las polticas de respaldo adecuadas, garantizan que los cambios de la base sern siempre consistentes sin importar si hay errores correctamente, etc. Organizan los datos con un impacto mnimo en el cdigo de los programas. Bajan drsticamente 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 recuperacin de los datos.

2.

Desventajas.
1. Tpicamente, es necesario disponer de una o ms 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 ms personas que administren los sistemas operativos. Esto puede llegar a incrementar los costos de operacin 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 clculo. 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 mximo. Tamao: la complejidad y la gran cantidad de funciones que tienen hacen que sea un software de gran tamao, que requiere de gran cantidad de memoria para poder correr. Costo del hardware adicional: los requisitos de hardware para correr un sistema de gestin de bases de datos por lo general son relativamente altos, por lo que estos equipos pueden llegar a costar gran cantidad de dinero.

2. 3. 4. 5.

Funcin de los sistemas de gestin 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 gestin de base de datos. 1. Debe proporcionar a los usuarios la capacidad de almacenar datos, acceder a ellos y actualizarlos. Esta es la funcin fundamental de un sistema de gestin de bases de datos y por supuesto ocultar al usuario la estructura fsica interna (la organizacin de los ficheros y las estructuras de almacenamiento). Proporciona un catlogo en el que se almacenen las descripciones de los datos y que sea accesible por los usuarios. Este catlogo es lo que se denomina diccionario de datos y contiene informacin que describe los datos (metadatos). Normalmente, un diccionario de datos almacena: Nombre, tipo y tamao 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. Estadsticas de utilizacin, tales como la frecuencia de las transacciones y el nmero de accesos realizados a los objetos de la base de datos.
15

2.

BLOQUE 1

Beneficios que reporta el diccionario de datos: La informacin 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 propsito de los mismos. La comunicacin se simplifica ya que se almacena el significado exacto. El diccionario de datos tambin puede identificar al usuario o usuarios que poseen los datos o que los acceden. Las redundancias y las inconsistencias se pueden identificar ms fcilmente ya que los datos estn 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 informacin 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 informacin para auditoras.

3.

Debe permitir un mecanismo que garantice todas las actualizaciones correspondientes a una determinada transaccin se realicen, o que no se realice ninguna. Una transaccin es un conjunto de acciones que cambian el contenido de la base de datos. Una transaccin en el sistema informtico de la empresa inmobiliaria sera dar de alta a un empleado o eliminar un inmueble. Una transaccin un poco ms complicada sera 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 transaccin falla durante su realizacin, por ejemplo porque falla el hardware, la base de datos quedar en un estado inconsistente. Algunos de los cambios se habrn hecho y otros no, por lo tanto, los cambios realizados debern ser deshechos para devolver la base de datos a un estado consistente. Un sistema de gestin de base de datos, debe proporcionar un mecanismo que asegure que la base de datos se actualice correctamente cuando varios usuarios la estn actualizando concurrentemente. Uno de los principales objetivos de los sistemas de gestin es el permitir que varios usuarios tengan acceso concurrente a los datos que comparten. El acceso concurrente es relativamente fcil de gestionar si todos los usuarios se dedican a leer datos, ya que no pueden interferir unos con otros. Sin embargo, cuando dos o ms usuarios estn 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 gestin de bases de datos se debe encargar de que estas interferencias no se produzcan en el acceso simultneo.

4.

16

SISTEMAS DE GESTORES DE BASES DE DATOS

5. Proporciona un mecanismo capaz de recuperar la base de datos en caso de que ocurra algn suceso que la dae. Como se ha comentado antes, cuando el sistema falla en medio de una transaccin, la base de datos se debe devolver a un estado consistente. Este fallo puede ser a causa de algn dispositivo hardware o un error del software, que hagan que el sistema de gestin de bases de datos aborte, o puede ser a causa de que el usuario detecte un error durante la transaccin y la aborte antes de que finalice. En todos estos casos, el sistema de gestin de bases de datos debe proporcionar un mecanismo capaz de recuperar la base de datos llevndola a un estado consistente. 6. Un sistema de gestin de base de datos, debe proporcionar un mecanismo que garantice que slo los usuarios autorizados pueden acceder a la base de datos. La proteccin debe ser contra accesos no autorizados, tanto intencionados como accidentales. 7. Debe ser capaz de integrarse con algn software de comunicacin. Muchos usuarios acceden a la base de datos desde terminales. En ocasiones estos terminales se encuentran conectados directamente a la mquina sobre la que funciona el sistema de gestin de bases de datos. En otras ocasiones los terminales estn en lugares remotos, por lo que la comunicacin con la mquina que alberga al sistema de gestin de bases de datos se debe hacer a travs de una red. En cualquiera de los dos casos, el sistema de gestin 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 gestin 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 adems 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 restriccin de que cada empleado no puede tener asignados ms de diez inmuebles. En este caso sera deseable que el sistema de gestin de bases de datos controlara que no se sobrepase este lmite cada vez que se asigne un inmueble a un empleado. Adems, de estas ocho funciones, es razonable esperar que los sistemas de gestin de bases de datos proporcionen un par de servicios ms: 1. Un sistema de gestin 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 fsica es ms fcil de alcanzar, de hecho hay varios tipos de cambios que se pueden realizar sobre la estructura fsica de la base de datos sin afectar a las vistas. Sin embargo, lograr una completa independencia de datos lgica es ms difcil. Aadir una nueva entidad, un atributo o una relacin puede ser sencillo, pero no es tan sencillo eliminarlos.

BLOQUE 1

17

2.

Un sistema de gestin 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 habrn 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 gestin 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 anlisis estadstico para examinar las prestaciones o las estadsticas de utilizacin. Reorganizacin de ndices. Para aprovechar el espacio dejado en el almacenamiento fsico 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 gestin de base de datos.

Escribe aqu el concepto.

Abstraccin de la informacin.

Independencia. Descripcin de los objetivos.

Consistencia.

Objetivos de los sistemas de gestin de base de datos.

Seguridad.

Manejo de transacciones.

Manejo de transacciones.

18

SISTEMAS DE GESTORES DE BASES DE DATOS

Actividad: 3 (continuacin)
Completa la siguiente tabla sobre las ventajas y desventajas de un sistema de gestin de bases de datos. Sistemas de gestin de bases de datos Ventajas Desventajas

Actividad: 3 Conceptual Clasifica los objetivos, ventajas y desventajas de un sistema de gestin de bases de datos. Coevaluacin

Evaluacin Producto: Tablas. Saberes Procedimental Interpreta los objetivos, las ventajas y desventajas de un sistema de gestin de bases de datos. C MC NC

Puntaje: Actitudinal Realiza las actividades del bloque de forma ordenada.

Calificacin otorgada por el docente

BLOQUE 1

19

Actividad: 4
Elabora un diagrama sobre las funciones de los sistemas de gestin de bases de datos (SDGB), posteriormente comntalo con tus compaeros.

Actividad: 4 Conceptual Identifica las funciones de los sistemas de gestin de bases de datos. Autoevaluacin

Evaluacin Producto: Diagrama. Saberes Procedimental Plasma en un diagrama las funciones de un sistema de gestin de base de datos. C MC NC

Puntaje: Actitudinal Muestra una actitud positiva en el desarrollo de la actividad.

Calificacin otorgada por el docente

20

SISTEMAS DE GESTORES DE BASES DE DATOS

Componentes de un sistema de gestin de bases de datos.


Los sistemas de gestin de base de datos son paquetes de programas muy complejos y sofisticados, formado por varios mdulos los cuales llevan a cabo una funcin especfica. El procesador de consultas es el componente principal en la gestin 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 aplicacin y las consultas de los usuarios. Acepta consultas y examina los esquemas externo y conceptual para determinar qu registros se requieren para satisfacer la peticin. Entonces el gestor de la base de datos realiza una llamada al gestor de ficheros para ejecutar la peticin. 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 funcin de dispersin para generar la direccin de los registros. Pero el gestor de ficheros no realiza directamente la entrada y salida de datos. Lo que hace es pasar la peticin a los mtodos 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 aplicacin, en llamadas a funciones estndar escritas en el lenguaje anfitrin. El preprocesador del LMD debe trabajar con el procesador de consultas para generar el cdigo apropiado. El compilador del LDD (Lenguaje de Definicin 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 mayora de los componentes del sistema de gestin de bases de datos acceden al diccionario de datos. LMD: Un lenguaje de

Principales componentes del gestor de la base de datos: Control de autorizacin. Este mdulo comprueba que el usuario tiene los permisos necesarios para llevar a cabo la operacin 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 operacin cambia los datos de la base de datos, este mdulo debe comprobar que la operacin a realizar satisface todas las restricciones de integridad necesarias. Optimizador de consultas. Este mdulo determina la estrategia ptima para la ejecucin de las consultas. Gestor de transacciones. Este mdulo realiza el procesamiento de las transacciones. Planificador (scheduler). Este mdulo es el responsable de asegurar que las operaciones que se realizan concurrentemente sobre la base de datos tienen lugar sin conflictos.

manipulacin de datos (Data Manipulation Language, o DML en ingls) es un lenguaje proporcionado por el sistema de gestin de base de datos que permite a los usuarios de la misma llevar a cabo las tareas de consulta o manipulacin de los datos, organizados por el modelo de datos adecuado.

BLOQUE 1

21

Gestor de recuperacin. Este mdulo garantiza que la base de datos permanece en un estado consistente en caso de que se produzca algn fallo. Gestor de buffers. Este mdulo es el responsable de transferir los datos entre memoria principal y los dispositivos de almacenamiento secundario. A este mdulo tambin se le denomina gestor de datos.

Ejemplos de sistemas de gestin de bases de datos.


Libres:

PostgreSQL, licencia BSD. Firebrid basada en la versin 6 de Interbase, Initial Developer's PUBLIC LICENSE Version 1.0. SQLite, licencia de dominio pblico DB2 Express-C. Apache Derby.

No Libres: Licencia Dual, depende el uso (no se sabe hasta cundo, ya que la compr Oracle). o Sin embargo, existen 2 versiones: una gratuita que sera equivalente a la edicin "express" SQL server de Microsoft Windows y otra ms completa de pago, ese pago se hara en la licencia de ella ya que permitira 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

22

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 Jerrquica. 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 mdulos de los sistemas de gestin de bases de datos. Mdulos Procesador de consultas. Funcin

Gestor de la base de datos.

Gestor de ficheros. Preprocesador del LMD.

Compilador del LDD.

Gestor del diccionario.

BLOQUE 1

23

Actividad: 5 (continuacin)
2) En la siguiente tabla, menciona la descripcin de los principales componentes de un sistema de gestin de bases de datos.

Componentes Control de autorizacin. Procesador de Comandos. Control de la integridad. Optimizador de consultas. Gestor de transacciones. Planificador (scheduler). Gestor de recuperacin.

Descripcin

Gestor de buffers.

Actividad: 5 Conceptual Identifica los mdulos y componentes de un sistema de gestin de bases de datos. Coevaluacin

Evaluacin Producto: Tablas. Puntaje: Saberes Procedimental Actitudinal Diferencia un mdulo de un Participa activamente en el componente de un sistema de debate. gestin de bases de datos. C MC NC Calificacin otorgada por el docente

24

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 gestin de bases de datos? _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ 3) Adems de las ocho funciones de un sistema de gestin de bases de datos, describe los dos servicios adicionales que proporciona SGBD. _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ 4) Menciona tres sistemas de gestin 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 gestin de bases de datos. Autoevaluacin

Evaluacin Producto: Cuestionario. Puntaje: Saberes Procedimental Actitudinal Distingue los dos servicios Est atento a la participacin de adicionales de un sistema de sus compaeros durante el gestin de bases de datos. debate grupal. C MC NC Calificacin otorgada por el docente

BLOQUE 1

25

Secuencia didctica 2. Estructura y diseo 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 Autoevaluacin

Evaluacin Producto: Cuestionario. Saberes Procedimental Analiza los conceptos bsicos de una base de datos. C MC NC

Puntaje: Actitudinal Est atento a la participacin de sus compaeros durante el debate grupal.

Calificacin otorgada por el docente

26

SISTEMAS DE GESTORES DE BASES DE DATOS

Desarrollo
Organizacin bsica de un sistema de gestin de archivos.
Antes de comenzar a hablar de lo que es un Sistema de Gestin de Archivos sera conveniente aclarar que es un archivo y cules son sus utilidades: Cuando hablamos de archivos, habitualmente se utilizan cuatro trminos: Campo, Registro, Archivo y Base de datos. Se puede decir que estos trminos 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 bsico, como ejemplo: un campo individual contiene un valor nico, como el apellido de un empleado, una fecha o un valor ledo por un sensor. Lo ms 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 dgito decimal). Un Registro es un conjunto de campos relacionados que pueden tratarse como una unidad por algunos programas de aplicacin. Por ejemplo: un registro de nombre empleado contendra campos tales como nombre, DNI, fecha de contratacin, etc. Un registro puede ser de longitud variable en el caso de que el nmero de campos pueda variar, esto depender de su diseo. 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 diseada para ser usada por varias aplicaciones diferentes. Puede contener toda la informacin relativa a una organizacin o proyecto.

Un Sistema de Gestin 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 aplicacin puede acceder a los archivos es mediante el sistema de gestin de archivos. Los objetivos para un sistema de gestin de archivos son: Cumplir con las necesidades de gestin de datos y con los requerimientos del usuario. Garantizar que los datos de los archivos sean vlidos. Optimizar el rendimiento en trminos de productividad y tiempo de respuesta. Ofrecer soporte de E/S para los distintos dispositivos de almacenamiento. Minimizar o eliminar la posibilidad de prdida o destruccin de datos.

BLOQUE 1

27

Con respecto al primer punto. Para un sistema interactivo, de propsito general, deben cumplirse los siguientes requisitos mnimos: 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 estarn 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 algn dao. 7. Ser capaz de acceder a sus archivos mediante un nombre simblico. Estos objetivos y requerimientos deben tenerse en cuenta en todo el estudio de los sistemas de gestin de archivos. Las caractersticas bsicas convenientes para los sistemas que almacenan grandes cantidades de datos son el rpido acceso para la recuperacin, la actualizacin conveniente y la economa de almacenamiento. La capacidad para representar estructuras de informacin del mundo real, la confiabilidad, la proteccin de la privacidad y el mantenimiento de la integridad son importantes criterios secundarios. El diseo de bases de datos requiere un anlisis para la prediccin del desempeo, y esto a su vez requiere que la organizacin de archivo pueda abastecerse fcilmente. Todos estos criterios tienden a entrar en conflicto entre s. La eleccin del mtodo de organizacin de archivo determina la adecuacin relativa de un sistema segn estos criterios. Inicialmente se evaluaran los archivos de acuerdo con los criterios bsicos. Para el xito del sistema resultante es vital que las capacidades proporcionadas por el sistema de archivo estn de acuerdo con las prioridades asignadas a los criterios, segn 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. Definicin

Campo

Registro

Archivo

Base de datos

2) En la siguiente tabla escribe los requisitos mnimos para un sistema interactivo y de propsito general. Requisitos para un sistema interactivo de propsito general. 1 2 3 4 5 6 7

Actividad: 2 Conceptual Reconoce el concepto de registro, campo, archivo y base de datos. Autoevaluacin

Evaluacin 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 propsito general. tablas. C MC NC Calificacin otorgada por el docente

BLOQUE 1

29

Estructura del sistema de archivos.


El proporcionar una estructura de sistema de archivos comn asegura que los usuarios y programas pueden acceder y escribir a los archivos. Los sistemas de archivos dividen en dos categoras lgicas: Archivos compartibles vs. no compartibles. Archivos variables vs. Estticos.

Los archivos compartibles son aqullos a los que se puede acceder desde varios hosts; mientras que los archivos no compartibles slo estn disponibles localmente. Los archivos variables, tales como documentos, pueden cambiar en cualquier momento; los archivos estticos, tales como binarios, no cambian sin una actuacin por parte del administrador de sistemas. Organizacin de los archivos Los archivos se encuentran organizados lgicamente como una secuencia de registros de varias longitudes diferentes. Los archivos de registros de longitud fija: Son los que almacenan la informacin 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 ms 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 organizacin de archivos Enfoque de acceso secuencial: Se refiere al procesamiento de los archivos de acuerdo con el orden especfico. Ejemplo archivo secuenciales y de texto. Enfoque de acceso Directo Permite recuperar registros individuales sin leer otros registros del archivo, ejemplos archivos indizados (indexados).

30

SISTEMAS DE GESTORES DE BASES DE DATOS

Mtodos para la organizacin de archivos. Pilas.


Este mtodo rara vez resulta prctico, pero proporciona una base para la evaluacin de mtodos ms 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 tamaos de campo. En el mejor de los casos el orden de los registros puede ser cronolgico. 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 informacin. Un registro debe consistir en elementos dato relacionados y cada valor dato debe tener una identificacin de sus significado. Esta puede ser un nombre explicito, un cdigo o una posicin que indique su tipo de atributo, tal como la altura, peso, matricula, etc. Caractersticas: Es la forma ms fcil 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 implcitamente con delimitadores, explcitamente incluidos como un subcampo ms. d) El acceso a los registros se hace por bsquedas exhaustiva y son fciles 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 fciles de organizar. Esta clase de archivo aprovecha bien el espacio cuando los datos almacenados varan en tamao y estructura. Fuera de estos usos limitados, este tipo de archivos no se adapta a la mayora de las aplicaciones. a)

Archivo secuencial.
Este mtodo proporciona dos cambios estructurales diferentes en relacin con la organizacin de apilo. La primera mejora es que los registros dato se ordenan en una secuencia especfica y la segunda es que los atributos de los datos se clasifican por categoras, de manera que los registros individuales contienen todos los valores de atributos de los datos en el mismo orden y posiblemente en la misma posicin. Entonces, los nombres de los atributos de los datos necesitan aparecer solo una vez en la descripcin 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 ms atributos se volvern los atributos llave para los registros en el archivo. El conjunto de valores para los atributos llave comnmente identifica el objeto descrito por el registro; es decir, el nmero de placa de un automvil 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 clasificacin 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 fsicamente almacenados en su orden lgico secuencial y podrn ser accesados consecutivamente cuando el archivo sea usado posteriormente como entrada. En esta tcnica de organizacin de archivos el proceso secuencial y el proceso en serie son expresiones sinnimas ya que los registros se alojan en el archivo en secuencia y en serie. La caracterstica ms importante de este tipo de archivos es que solo permite el acceso secuencial. Esta caracterstica impide que el archivo secuencial sea usado en procesos en lnea o interactivos debido a que no se puede accesar rpidamente a un registro, restringindose su aplicacin a los procesos en lote, donde se aprovecha la habilidad de la tcnica secuencial de organizacin de archivos para accesar al siguiente registr rpidamente. Es la forma bsica de organizar un conjunto de registros, que forman un archivo, utilizando una organizacin secuencial. En un archivo organizado secuencialmente, lo registros quedan grabados consecutivamente cuando el archivo se utiliza como entrada. En la mayora de los casos, los registros de un archivo secuencial quedan ordenados de acuerdo con el valor de algn 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. Caractersticas: a) Es la forma ms comn de estructura de archivos. b) Se emplea un formato fijo para los registros, son de la misma longitud y constan del mismo nmero de campos de tamao 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 organizacin 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 bsqueda 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 podrn aplicar tcnicas de bsquedas ms eficientes. Al acceder un registro de un archivo secuencial grande, se produce un procesamiento extra y un retardo considerable. f) La organizacin fsica del archivo en una cinta o disco se corresponde exactamente con la organizacin lgica 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 fsicamente el archivo secuencial como una lista enlazada, en cada bloque fsico se almacena uno o ms registros y cada bloque del disco contiene un puntero al bloque siguiente. La insercin de un nuevo registro implica la manipulacin de puntero, pero no requiere que el nuevo registro ocupe una posicin particular del bloque fsico.

32

SISTEMAS DE GESTORES DE BASES DE DATOS

Archivo secuencial indizado (indexado).


El diseo de archivo secuencial indizado intenta superar el problema de acceso inherente a la organizacin de archivo secuencial, sin perder todos los beneficios de los archivos secuenciales. Para obtener este tercer tipo de organizacin de archivos se agregan dos caractersticas a la organizacin de archivo secuencial. Una caracterstica 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. Caractersticas: a) Los registros se organizan en una secuencia basada en un campo clave presentando dos caractersticas, un ndice del archivo para soportar los accesos aleatorios y un archivo de desbordamiento. El ndice proporciona una capacidad de bsqueda para llagar rpidamente 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 ms 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 bsqueda continua en el archivo principal a partir de la posicin 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, tambin se aade al archivo de desbordamiento. El registro del archivo principal que precede inmediatamente al nuevo registro segn la secuencia lgica se actualiza con un puntero del registro nuevo en el archivo de desbordamiento, si el registro inmediatamente anterior est tambin 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 procesarn en secuencia hasta encontrar un puntero al archivo de desbordamiento, el acceso contina 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 aplicacin de incluir ndices en el almacenamiento de los archivos; de esta forma nos ser ms fcil buscar algn 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 posicin de registro correspondiente en el almacenamiento masivo. Caractersticas: a) Explotan la capacidad de los discos para acceder directamente a cualquier bloque de direccin conocida. b) Se requiere un campo clave en cada registro. c) Los archivos directos son muy usados donde se necesita un acceso muy rpido, donde se usan registros de longitud fija y donde siempre se accede a los registros de una vez.

Fundamentos de archivos indizados (indexados).


La colocacin de un listado al inicio del archivo: para la identificacin del contenido. La presentacin de un segundo ndice: para reflejar la informacin de cada punto principal del ndice anterior. La actualizacin de los ndices: Cuando se insertan y eliminan archivos, es preciso actualizar los ndices para evitar contratiempos actualizando un archivo. La organizacin de un ndice: Nos evita examinar archivo por archivo para recuperar algn registro buscado; por lo tanto ahorraramos tiempo si tenemos una adecuado organizacin de los ndices.

Algunos lenguajes de alto nivel cuentan con subttulos para manipular los archivos de un registro indizado. Valindose 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 dispersin.


Explotan la capacidad de los discos para acceder directamente a cualquier bloque de direccin conocida. Se requiere un campo clave en cada registro. Los archivos directos son muy usados donde se necesita un acceso muy rpido, donde se usan registros de longitud fija y donde siempre se accede a los registros de una vez.

34

SISTEMAS DE GESTORES DE BASES DE DATOS

Actividad: 3
En binas desarrolla lo que a continuacin se te solicita y participa en un debate grupal. 1) Completa la siguiente tabla, sobre los mtodos para la organizacin de archivos. Descripcin Caractersticas

Pilas

Secuenciales

Secuenciales indizados (indexados)

Evaluacin Actividad: x Conceptual Producto: Saberes Procedimental C MC NC Puntaje: Actitudinal Calificacin otorgada por el docente

Indizados (indexados)
Autoevaluacin

Directos o de dispersin.

Actividad: 3 Conceptual Identifica los mtodos para la organizacin de archivos. Coevaluacin

Evaluacin Producto: Tablas. Saberes Procedimental Analiza los diferentes mtodos para la organizacin de archivos. C MC NC

Puntaje: Actitudinal Muestra inters en la realizacin de la actividad y respeto a sus compaeros durante el debate grupal.

Calificacin otorgada por el docente

BLOQUE 1

35

Cierre
Actividad: 4
Desarrolla lo que se te solicita y posteriormente participa en un debate grupal. 1) Menciona dos categoras lgicas en las cuales se dividen los sistemas de archivos.

_________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ 2) Escribe la descripcin de los archivos de longitud fija. _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ 3) Qu son los archivos de longitud variable? _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ 4) A qu se refiere el enfoque secuencial? _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ 5) Cul es la ventaja del enfoque directo a un archivo? _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________

Actividad: 4 Conceptual Identifica los conceptos bsicos de los sistemas de archivos. Autoevaluacin

Evaluacin Producto: Cuestionario. Saberes Procedimental Contrasta el acceso a un archivo mediante el enfoque secuencial con el enfoque directo. C MC NC

Puntaje: Actitudinal Atiende las indicaciones del docente, al realizar la actividad.

Calificacin otorgada por el docente

36

SISTEMAS DE GESTORES DE BASES DE DATOS

Secuencia didctica 3. Estructura y diseo 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 inscripcin 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. Autoevaluacin

Evaluacin Producto: Ejercicio. Saberes Procedimental Identifica los componentes de una base de datos en la prctica. C MC NC

Puntaje: Actitudinal Atiende las indicaciones del docente, al realizar la actividad.

Calificacin otorgada por el docente

BLOQUE 1

37

Desarrollo
Introduccin a los sistemas de base de datos.
Un sistema de base de datos es la combinacin 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 vnculos o relaciones y las restricciones que deben cumplir esos datos (integridad de datos y redundancia de datos). Un ejemplo a modo de descripcin de la estructura de una base de datos puede ser:

ALUMNO: Nmero de alumno (entero de 6 nmeros), nombre (cadena de 30 caracteres), apellido (cadena de 30 caracteres), ao de nacimiento (entero de 4 nmeros), especialidad (entero de 3 nmeros). ESPECIALIDAD: Nmero de especialidad (entero de 3 nmeros), nombre de especialidad (cadena de 30 caracteres).

38

SISTEMAS DE GESTORES DE BASES DE DATOS

Diseo de una base de datos.


El diseo incluye diferentes modelos y esquemas, como tambin software de gestin de la misma (sistemas de gestin de bases de datos). El diseador de bases de datos, es la persona que se encarga de identificar los datos que se almacenarn 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 diseador debe trabajar sobre la misma cuando ya est en funcionamiento. El o los diseadores de bases de datos se encargan de determinar los requerimientos de los usuarios que usarn la base de datos.

Actividades del diseo.

Diseo 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 gestin de bases de datos), partiendo de especificaciones de requerimientos. Diseo lgicos de bases de datos: Parte del esquema conceptual de una base de datos, resultando en un esquema lgico el cual es una descripcin de la estructura que puede procesar un sistema de gestin. Diseo fsico de bases de datos: Es una descripcin de la implementacin de una base de datos en memoria secundaria, describiendo las estructuras de almacenamiento y los mtodos de acceso a esos datos.

BLOQUE 1

39

Actividad: 2
En equipo de cinco integrantes, realiza la siguiente prctica y posteriormente lleva a cabo una exposicin sobre los resultados obtenidos. Prctica: 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 compaeros de equipo, que campos vas a utilizar y a continuacin elabora un diagrama del diseo de la base de datos, con tres registros, con sus campos debidamente capturados (Pueden ser datos ficticios).

Actividad: 2 Conceptual Organiza la informacin utilizando una base de datos. Coevaluacin

Evaluacin Producto: Prctica. Saberes Procedimental Disea una base de datos en un contexto escolar. C MC NC

Puntaje: Actitudinal Comparte su opinin con sus compaeros de equipo con respecto a la informacin que se utilizara en la base de datos.

Calificacin otorgada por el docente

40

SISTEMAS DE GESTORES DE BASES DE DATOS

Arquitectura de los sistemas de gestin de bases de datos.


Hay tres caractersticas importantes inherentes a los sistemas de bases de datos: la separacin entre los programas de aplicacin y los datos, el manejo de mltiples vistas por parte de los usuarios y el uso de un catlogo 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 caractersticas. El objetivo de la arquitectura de tres niveles es el de separar los programas de aplicacin de la base de datos fsica. En esta arquitectura, el esquema de una base de datos define tres niveles de abstraccin distintos: 1) En el nivel interno se describe la estructura fsica de la base de datos mediante un esquema interno. Este esquema se especifica mediante un modelo fsico y describe todos los detalles para el almacenamiento de la base de datos, as como los mtodos 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 organizacin), 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 lgico 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 lgico para especificar los esquemas. Hay que destacar que los tres esquemas no son ms que descripciones de los mismos datos pero con distintos niveles de abstraccin. Los nicos datos que existen realmente estn a nivel fsico, almacenados en un dispositivo como puede ser un disco. En un sistema de gestin 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 gestin de bases de datos debe transformar cualquier peticin expresada en trminos de un esquema externo a una peticin expresada en trminos del esquema conceptual, y luego, a una peticin en el esquema interno, que se procesar sobre la base de datos almacenada. Si la peticin es de una obtencin (consulta) de datos, ser preciso modificar el formato de la informacin extrada 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 transformacin. Estas correspondencias pueden requerir bastante tiempo, por lo que algunos sistemas de gestin 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 lgica es la capacidad de modificar el esquema conceptual sin tener que alterar los esquemas externos ni los programas de aplicacin. 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 debern verse afectados. La independencia fsica 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 fsicos con el fin de mejorar el rendimiento de las operaciones de consulta o de actualizacin de datos. Dado que la independencia fsica se refiere slo a la separacin entre las aplicaciones y las estructuras fsicas de almacenamiento, es ms fcil de conseguir que la independencia lgica.

En los sistemas de gestin de bases de datos que tienen la arquitectura de varios niveles es necesario ampliar el catlogo o diccionario, de modo que incluya informacin sobre cmo establecer la correspondencia entre las peticiones de los usuarios y los datos, entre los diversos niveles. El sistema de gestin de bases de datos utiliza una serie de procedimientos adicionales para realizar estas correspondencias haciendo referencia a la informacin de correspondencia que se encuentra en el catlogo. La independencia de datos se consigue porque al modificarse el esquema en algn nivel, el esquema del nivel inmediato superior permanece sin cambios, slo se modifica la correspondencia entre los dos niveles. No es preciso modificar los programas de aplicacin que hacen referencia al esquema del nivel superior. Por lo tanto, la arquitectura de tres niveles puede facilitar la obtencin de la verdadera independencia de datos, tanto fsica como lgica. Sin embargo, los dos niveles de correspondencia implican un gasto extra durante la ejecucin de una consulta o de un programa, lo cual reduce la eficiencia del sistema de gestin de bases de datos. Es por esto que muy pocos sistemas de gestin de bases de datos han implementado esta arquitectura completa.

Lenguajes de los sistemas de gestin de bases de datos.


Los sistemas de gestin de bases de datos deben ofrecer lenguajes e interfaces apropiadas para cada tipo de usuario: administradores de la base de datos, diseadores, programadores de aplicaciones y usuarios finales.

42

SISTEMAS DE GESTORES DE BASES DE DATOS

Lenguajes de definicin de datos.


Una vez finalizado el diseo de una base de datos y escogido un sistema de gestin de bases de datos para su implementacin, 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 gestin de bases de datos no se mantiene una separacin estricta de niveles, por lo que el administrador de la base de datos y los diseadores utilizan el mismo lenguaje para definir ambos esquemas, es el lenguaje de definicin de datos (LDD). El sistema de gestin de bases de datos posee un compilador de LDD cuya funcin consiste en procesar las sentencias del lenguaje para identificar las descripciones de los distintos elementos de los esquemas y almacenar la descripcin del esquema en el catlogo o diccionario de datos. Se dice que el diccionario contiene metadatos: describe los objetos de la base de datos.

Cuando en un sistema de gestin de bases de datos hay una clara separacin entre los niveles conceptual e interno, el LDD slo sirve para especificar el esquema conceptual. Para especificar el esquema interno se utiliza un lenguaje de definicin 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 sera necesario disponer de un tercer lenguaje, el lenguaje de definicin de vistas (LDV), que se utilizara 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 cmo 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 informacin requerida. Estos lenguajes acceden a un registro, lo procesan y basndose en los resultados obtenidos, acceden a otro registro, que tambin 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 anfitrin. Las bases de datos jerrquicas 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 gestin de bases de datos se pueden introducir interactivamente instrucciones del LMD desde un terminal o bien embeberlas en un lenguaje de programacin 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 cmo se debe acceder a ellos. El sistema de gestin 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 cul es la estructura fsica de los datos y qu algoritmos se deben utilizar para acceder a ellos. A los LMD no procedurales tambin 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 ms fciles de aprender y de usar que los procedurales, y el usuario debe realizar menos trabajo, siendo el sistema de gestin de bases de datos quien hace la mayor parte. La parte de los LMD no procedurales que realiza la obtencin de datos es lo que se denomina un lenguaje de consultas. En general, las rdenes tanto de obtencin como de actualizacin 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 tcnicamente incorrecto.

Lenguajes de cuarta generacin.


No existe consenso sobre lo que es un lenguaje de cuarta generacin (4GL). Lo que en un lenguaje de tercera generacin (3GL) como COBOL requiere cientos de lneas de cdigo, tan solo necesita diez o veinte lneas 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 cmo debe hacerse. Los 4GL se apoyan en unas herramientas de mucho ms alto nivel denominadas herramientas de cuarta generacin. El usuario no debe definir los pasos a seguir en un programa para realizar una determinada tarea, tan slo debe definir una serie de parmetros que estas herramientas utilizarn para generar un programa de aplicacin. 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 presentacin, como lenguajes de consultas y generadores de informes. Lenguajes especializados, como hojas de clculo 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 cdigo de la aplicacin.

Los lenguajes SQL y QBE son ejemplos de 4GL. Hay otros tipos de 4GL: Un generador de formularios es una herramienta interactiva que permite crear rpidamente formularios de pantalla para introducir o visualizar datos. Los generadores de formularios permiten que el usuario defina el aspecto de la pantalla, qu informacin se debe visualizar y en qu lugar de la pantalla debe visualizarse. Algunos generadores de formularios permiten la creacin de atributos derivados utilizando operadores aritmticos y tambin permiten especificar controles para la validacin 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 informacin 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 automticamente el aspecto de la salida o se puede disear sta para que tenga el aspecto que desee el usuario final.

44

SISTEMAS DE GESTORES DE BASES DE DATOS

Un generador de grficos es una herramienta para obtener datos de la base de datos y visualizarlos en un grfico mostrando tendencias y relaciones entre datos. Normalmente se pueden disear distintos tipos de grficos: barras, lneas, 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 disear un programa de aplicacin. Los generadores de aplicaciones constan de procedimientos que realizan las funciones fundamentales que se utilizan en la mayora de los programas. Estos procedimientos estn escritos en un lenguaje de programacin de alto nivel y forman una librera de funciones entre las que escoger. El usuario especifica qu debe hacer el programa y el generador de aplicaciones es quien determina cmo 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 abstraccin, en la arquitectura de los sistemas de bases de datos. Arquitectura de tres niveles para los sistemas de bases de datos. Nivel interno Definicin: Nivel conceptual Definicin: Definicin: Nivel externo

BLOQUE 1

45

Actividad: 3 (continuacin)
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 definicin de los dos tipos de independencia de datos: Tipos de independencia de datos

Actividad: 3 Conceptual Reconoce los niveles de abstraccin en las bases de datos, as como los tipos de independencia de datos. Coevaluacin

Evaluacin Producto: Tabla. Saberes Procedimental Analiza los niveles de abstraccin de bases de datos y los tipos de independencia de datos. C MC NC

Puntaje: Actitudinal Muestra una actitud positiva durante el desarrollo de la actividad.

Calificacin otorgada por el docente

46

SISTEMAS DE GESTORES DE BASES DE DATOS

Esquemas de una base de datos.


Esquema conceptual de alto nivel de una base de datos: El diseo 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 descripcin de alto nivel de la estructura de la base de datos, independientemente del sistema de gestin 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 diseo conceptual es describir el contenido de informacin de la base de datos y no las estructuras de almacenamiento que se necesitarn para manejar esta informacin. Esquema lgico de la base de datos: El diseo lgico parte del esquema conceptual y da como resultado un esquema lgico. Un esquema lgico es una descripcin de la estructura de la base de datos en trminos de las estructuras de datos que puede procesar un tipo de sistemas de gestin de bases de datos. Un modelo lgico es un lenguaje usado para especificar esquemas lgicos (modelo relacional, modelo de red, etc.). El diseo lgico depende del tipo de sistemas de gestin de bases de datos que se vaya a utilizar, no depende del producto concreto. Esquema fsico de la base de datos: El diseo fsico parte del esquema lgico y da como resultado un esquema fsico. Un esquema fsico es una descripcin de la implementacin de una base de datos en memoria secundaria: las estructuras de almacenamiento y los mtodos utilizados para tener un acceso eficiente a los datos. Por ello, el diseo fsico depende del sistema de gestin de bases de datos concretos y el esquema fsico se expresa mediante su lenguaje de definicin 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 lgicos. Los modelos conceptuales se utilizan para representar la realidad a un alto nivel de abstraccin. Se puede construir una descripcin de la realidad fcil de entender. En los modelos lgicos, las descripciones de los datos tienen una correspondencia sencilla con la estructura fsica de la base de datos. En el diseo de bases de datos se usan primero los modelos conceptuales para lograr una descripcin de alto nivel de la realidad, y luego se transforma el esquema conceptual en un
47

BLOQUE 1

esquema lgico. 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 lingsticas o grficas que describen la estructura de los datos de inters. 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 fciles de entender. Minimalidad: cada concepto debe tener un significado distinto. Formalidad: todos los conceptos deben tener una interpretacin 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 aadir aserciones que complementen el esquema.

Modelo Entidad-Relacin.
El modelo entidad-relacin es el modelo conceptual ms utilizado para el diseo 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 grficas y lingsticas. Originalmente, el modelo entidad-relacin slo inclua los conceptos de entidad, relacin y atributo. Ms tarde, se aadieron otros conceptos, como los atributos compuestos y las jerarquas de generalizacin, en lo que se ha denominado modelo entidad-relacin extendido. Entidad Cualquier tipo de objeto o concepto sobre el que se recoge informacin: cosa, persona, concepto abstracto o suceso. Por ejemplo: coches, casas, empleados, clientes, empresas, oficios, diseos de productos, conciertos, excursiones, etc. Las entidades se representan grficamente mediante rectngulos y su nombre aparece en el interior. Un nombre de entidad slo puede aparecer una vez en el esquema conceptual. Hay dos tipos de entidades: fuertes y dbiles. Una entidad dbil 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. Relacin (interrelacin) Es una correspondencia o asociacin entre dos o ms entidades. Cada relacin tiene un nombre que describe su funcin. Las relaciones se representan grficamente mediante rombos y su nombre aparece en el interior. Las entidades que estn involucradas en una determinada relacin se denominan entidades participantes. El nmero de participantes en una relacin es lo que se denomina grado de la relacin. Por lo tanto, una relacin en la que participan dos entidades es una relacin binaria; si son tres las entidades participantes, la relacin es ternaria; etc. Una relacin recursiva es una relacin donde la misma entidad participa ms de una vez en la relacin con distintos papeles. El nombre de estos papeles es importante para determinar la funcin de cada participacin.

48

SISTEMAS DE GESTORES DE BASES DE DATOS

La cardinalidad con la que una entidad participa en una relacin especifica el nmero mnimo y el nmero mximo de correspondencias en las que puede tomar parte cada ocurrencia de dicha entidad. La participacin de una entidad en una relacin 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 participacin es opcional (parcial). Las reglas que definen la cardinalidad de las relaciones son las reglas de negocio.

A veces, surgen problemas cuando se est diseado un esquema conceptual. Estos problemas, denominados trampas, suelen producirse a causa de una mala interpretacin en el significado de alguna relacin, 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 relacin. 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 relacin entre entidades, pero el camino entre algunas de sus ocurrencias es ambiguo. El modo de resolverla es reestructurando el esquema para representar la asociacin entre las entidades correctamente. Otra de las trampas sucede cuando un esquema sugiere la existencia de una relacin entre entidades, pero el camino entre una y otra no existe para algunas de sus ocurrencias. En este caso, se produce una prdida de informacin que se puede subsanar introduciendo la relacin que sugera el esquema y que no estaba representada. Atributos Es una caracterstica de inters o un hecho sobre una entidad o sobre una relacin. Los atributos representan las propiedades bsicas de las entidades y de las relaciones. Toda la informacin extensiva es portada por los atributos. Grficamente, 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 ms pequeas 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 grficamente mediante un valo.

BLOQUE 1

49

Los atributos tambin pueden clasificarse en monovalentes o polivalentes. Un atributo monovalente es aquel que tiene un solo valor para cada ocurrencia de la entidad o relacin a la que pertenece. Un atributo polivalente es aquel que tiene varios valores para cada ocurrencia de la entidad o relacin a la que pertenece. A estos atributos tambin se les denomina multivaluados, y pueden tener un nmero mximo y un nmero mnimo de valores. La cardinalidad de un atributo indica el nmero mnimo y el nmero mximo de valores que puede tomar para cada ocurrencia de la entidad o relacin a la que pertenece. El valor por omisin 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 relacin. 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 condicin 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 manipulacin de una base de datos.

50

SISTEMAS DE GESTORES DE BASES DE DATOS

Actividad: 4 (continuacin)

Actividad: 4 Conceptual Identifica los modelos para la manipulacin de las bases de datos. Autoevaluacin

Evaluacin Producto: Diagrama. Saberes Procedimental Diagrama los modelos para la manipulacin de una base de datos. C MC NC

Puntaje: Actitudinal Cumple con el desarrollo de la actividad, en el plazo de tiempo establecido.

Calificacin otorgada por el docente

BLOQUE 1

51

Clasificacin de los sistemas de gestin de bases de datos.


El primer criterio que se utiliza para clasificar los sistemas de gestin de bases de datos es el modelo lgico en que se basan. Los modelos lgicos empleados con mayor frecuencia en los sistemas de gestin actuales son el relacional, el de red y el jerrquico. Algunos sistemas de gestin de bases de datos ms modernos se basan en modelos orientados a objetos. La estructura lgica, en el mbito conceptual o externo, es la base para la clasificacin de los sistemas de gestin de bases de datos en las cuatro categoras siguientes: jerrquica, red, relacional y orientada a objetos. Cualquier categora 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 gestin de bases de datos est diseado para manejar un tipo de estructura lgica.

Enfoque jerrquico: La base de datos jerrquica consta de muchos registros. Cada nodo representa un tipo de

registro conceptual o un segmento. Cada registro o segmento est constituido por un cierto nmero de campos que lo describen. Cada rama representa una relacin uno a muchos. En este modelo los datos se organizan en una forma similar a un rbol (visto al revs), en donde un nodo padre de informacin puede tener varios hijos. El nodo que no tiene padres es llamado raz, y a los nodos que no tienen hijos se los conoce como hojas. Las bases de datos jerrquicas son especialmente tiles en el caso de aplicaciones que manejan un gran volumen de informacin 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. Enfoque Red: Este es un modelo ligeramente distinto del jerrquico; su diferencia fundamental es la modificacin del concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida en el modelo jerrquico). Fue una gran mejora con respecto al modelo jerrquico, ya que ofreca una solucin eficiente al problema de redundancia de datos; pero, aun as, la dificultad que significa administrar la informacin en una base de datos de red ha significado que sea un modelo utilizado en su mayora por programadores ms que por usuarios finales. Para representar este tipo de relacin, es necesario que los dos tipos de registro estn interconectados por medio de un registro conector llamado conjunto conector.

52

SISTEMAS DE GESTORES DE BASES DE DATOS

Enfoque Relacionar: Este es el modelo utilizado en la actualidad para modelar problemas reales y administrar datos dinmicamente. Su idea fundamental es el uso de "relaciones". Estas relaciones podran considerarse en forma lgica como conjuntos de datos llamados "tuplas". Pese a que sta es la teora de las bases de datos relacionales creadas por Edgar Frank Codd, la mayora de las veces se conceptualiza de una manera ms fcil de imaginar. Esto es pensando en cada relacin como si fuese una tabla que est compuesta por registros (las filas de una tabla), que representaran 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 nmero 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 ms tablas existentes.

El lenguaje ms habitual para construir las consultas a bases de datos relacionales es SQL, (Structured Query Language o Lenguaje Estructurado de Consultas), un estndar implementado por los principales motores o sistemas de gestin de bases de datos relacionales. Enfoque orientado a objetos: Define una base de datos en trminos 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 jerarquas o grafos a cclicos. Las operaciones de cada clase se especifican en trminos de procedimientos predefinidos denominados mtodos. Algunos sistemas de gestin de bases de datos relacionales existentes en el mercado han estado extendiendo sus modelos para incorporar conceptos orientados a objetos. A estos sistemas de gestin de bases de datos se les conoce como sistemas objetorelacionales.

Un segundo criterio para clasificar los sistemas de gestin de bases de datos es el nmero de usuarios a los que da servicio el sistema. Los sistemas monousuario slo 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 gestin de bases de datos, atienden a varios usuarios al mismo tiempo. Un tercer criterio es el nmero de sitios en los que est distribuida la base de datos. Casi todos los sistemas de gestin de bases de datos son centralizados: sus datos se almacenan en un solo computador. Los sistemas de gestin de bases de datos centralizados pueden atender a varios usuarios, pero el sistema de gestin de bases de datos y la base de datos en s reside por completo en una sola mquina. En los sistemas de gestin de bases de datos distribuidos la base de datos real y el propio software del sistema de gestin de bases de datos pueden estar distribuidos en varios sitios conectados por una red. Los sistemas de gestin de bases de datos distribuidos homogneos utilizan los mismos sistemas de gestin de bases de datos en mltiples sitios. Una tendencia reciente consiste en crear software para tener acceso a varias bases de datos autnomas preexistentes almacenadas en sistemas de gestin de bases de datos distribuidos heterogneos. Esto da lugar a los sistemas de gestin de bases de datos federados o sistemas multibase de datos en los que los sistemas de gestin de bases de datos participantes tienen cierto grado de autonoma local. Muchos sistemas de gestin de bases de datos distribuidos emplean una arquitectura cliente-servidor.

BLOQUE 1

53

Actividad: 5
En binas, completa la siguiente tabla sobre la clasificacin de los sistemas de gestin de bases de datos y participa en un debate grupal.

Clasificacin de los sistemas de gestin de bases de datos Descripcin

Enfoque jerrquico

Enfoque Red

Enfoque Relacionar

Enfoque orientado a objetos.

Actividad: 5 Conceptual Identifica los enfoques de los sistemas de gestin de bases de datos. Coevaluacin

Evaluacin Producto: Tabla. Puntaje: Saberes Procedimental Actitudinal Diferencia cada uno de los Muestra inters al realizar la enfoques de los sistemas de actividad. gestin de bases de datos. C MC NC Calificacin otorgada por el docente

54

SISTEMAS DE GESTORES DE BASES DE DATOS

Fundamentos de normalizacin de una base de datos.


La normalizacin es el proceso de organizar los datos de una base de datos. Se incluye la creacin de tablas y el establecimiento de relaciones entre ellas segn reglas diseadas tanto para proteger los datos como para hacer que la base de datos sea ms 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 ms de un lugar, se deben cambiar de la misma forma exactamente en todas sus ubicaciones. Un cambio en la direccin de un cliente es mucho ms fcil de implementar si los datos slo se almacenan en la tabla Clientes y no en algn 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 direccin 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 debera 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 normalizacin 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 normalizacin, la tercera forma normal se considera el mximo 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 estndares de forma perfecta. En general, la normalizacin requiere tablas adicionales y algunos clientes consideran ste un trabajo considerable. Si se decide infringir una de las tres primeras reglas de la normalizacin, se deber tener la seguridad de que su aplicacin 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 orgenes posibles, un registro del inventario puede contener campos para el Cdigo de proveedor 1 y para el Cdigo 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 fcilmente un nmero variable de proveedores. En su lugar, coloca toda la informacin de los proveedores en una tabla independiente denominada Proveedores y despus vincula el inventario a los proveedores con el nmero de elemento como clave, o los proveedores al inventario con el cdigo 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 direccin de un cliente en un sistema de contabilidad. La direccin se necesita en la tabla Clientes, pero tambin en las tablas Pedidos, Envos, Facturas, Cuentas por cobrar y Colecciones. En lugar de almacenar la direccin de un cliente como una entrada independiente en cada una de estas tablas, almacnela 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 ms de un nico registro de la tabla, considere colocar estos campos en una tabla independiente. Por ejemplo, en una tabla Contratacin de empleados, puede incluirse el nombre de la universidad y la direccin de un candidato. Pero necesita una lista completa de universidades para enviar mensajes de correo electrnico en grupo. Si la informacin 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 vinclela a la tabla Candidatos con el cdigo de universidad como clave. EXCEPCIN: Cumplir la tercera forma normal, aunque en teora es deseable, no siempre es prctico. Si tiene una tabla Clientes y desea eliminar todas las dependencias posibles entre los campos, debe crear tablas independientes para las ciudades, cdigos postales, representantes de venta, clases de clientes y cualquier otro factor que pueda estar duplicado en varios registros. En teora, la normalizacin merece el trabajo que supone. Sin embargo, muchas tablas pequeas pueden degradar el rendimiento o superar la capacidad de memoria o de archivos abiertos. Puede ser ms factible aplicar la tercera forma normal slo a los datos que cambian con frecuencia. Si quedan algunos campos dependientes, disee la aplicacin para que pida al usuario que compruebe todos los campos relacionados cuando cambie alguno. Otras formas de normalizacin La cuarta forma normal, tambin llamada Forma normal de Boyce Codd (BCNF, Boyce Codd Normal Form), y la quinta forma normal existen, pero rara vez se consideran en un diseo real. Si no se aplican estas reglas, el diseo de la base de datos puede ser menos perfecto, pero no debera afectar a la funcionalidad.

56

SISTEMAS DE GESTORES DE BASES DE DATOS

Normalizar una tabla de ejemplo. Estos pasos demuestran el proceso de normalizacin de una tabla de alumnos ficticia. 1. Tabla sin normalizar: N alumno 1022 4123 Tutor Garca Daz Despacho-Tut 412 216 Clase1 101-07 201-01 Clase2 143-01 211-02 Clase3 159-02 214-01

2. Primera forma normal: No hay grupos repetidos.

Las tablas slo 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 diseo. Las hojas de clculo suelen usar la tercera dimensin, pero las tablas no deberan hacerlo. Otra forma de considerar ese problema es con una relacin 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), segn se muestra a continuacin: N alumno 1022 1022 1022 4123 4123 4123 Tutor Garca Garca Garca Daz Daz Daz Despacho-Tut 412 412 412 216 216 216 N clase 101-07 143-01 159-02 201-01 211-02 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 relacin no cumple la segunda forma normal.

Las dos tablas siguientes demuestran la segunda forma normal:

Alumnos: N alumno 1022 4123 Tutor Garca Daz Despacho-Tut. 412 216

BLOQUE 1

57

Registro: N alumno 1022 1022 1022 4123 4123 4123 N clase 101-07 143-01 159-02 201-01 211-02 214-01

4. Tercera forma normal: Eliminar los datos no dependientes de la clave. En el ltimo ejemplo, Despacho-Tut (el nmero de despacho del tutor) es funcionalmente dependiente del atributo Tutor. La solucin es pasar ese atributo de la tabla Alumnos a la tabla Personal, segn se muestra a continuacin: Alumnos: N alumno 1022 4123 Tutor Garca Daz

Personal: Nombre Garca Daz Habitacin 412 216 Dept. 42 42

58

SISTEMAS DE GESTORES DE BASES DE DATOS

Cierre
Actividad: 6
En equipo de cinco integrantes, realiza una investigacin sobre algn caso donde se lleve a cabo la normalizacin de una base de datos y posteriormente comntalo con tus compaeros y profesor. En este espacio dibuja la tabla sin normalizar, tambin dibuja la primera, segunda, tercera y cuarta forma normal.

Evaluacin Actividad: x Conceptual Autoevaluacin C Producto: Saberes Procedimental MC NC Puntaje: Actitudinal Calificacin otorgada por el docente

BLOQUE 1

59

Actividad: 6 (continuacin)

Actividad: 6 Conceptual Identifica los fundamentos de la normalizacin de bases de datos. Coevaluacin

Evaluacin Producto: Investigacin. Saberes Procedimental Aplica la primera, segunda, tercera y cuarta forma normal. C MC NC

Puntaje: Actitudinal Realiza la normalizacin de la base de datos en forma ordenada.

Calificacin otorgada por el docente

60

SISTEMAS DE GESTORES DE BASES DE DATOS

Utiliza Visual Fox Pro.

Competencias profesionales:

Desarrolla documentos electrnicos, de acuerdo con los requerimientos establecidos (software). Localiza, obtiene informacin y se comunica utilizando las tecnologas de la informacin y de comunicacin (software). Disea y modifica las imgenes digitales, estticas y dinmicas, empleando herramientas de software de diseo (multimedia). Instala y configura hardware, software y sistemas de seguridad informtica, conforme a los manuales del fabricante, reglas de seguridad e higiene y polticas de uso (hardware). Aplica mantenimiento preventivo, correctivo y cualitativo de hardware y software, de acuerdo con los manuales tcnicos del fabricante y las polticas establecidas (hardware). Resuelve problemas de procesamiento de informacin utilizando lenguajes, manejadores de bases de datos y metodologas, de acuerdo con los requerimientos del usuario (software).

Unidad de competencia:
Reconoce las ventajas del uso del VISUAL FOXPRO como sistema de gestin de base de datos y utiliza tablas para la creacin de proyectos mediante formularios, para la manipulacin correcta y responsable en las operaciones de consulta, edicin, adicin y eliminacin de la informacin.

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 accin con base en criterios sustentados y en el marco de un proyecto de vida. Aplica distintas estrategias comunicativas segn quienes sean sus interlocutores, el contexto en el que se encuentra y los objetivos que persigue. Maneja las tecnologas de la informacin y la comunicacin para obtener informacin y expresar ideas. Sigue instrucciones y procedimientos de manera reflexiva, comprendiendo como cada uno de sus pasos contribuye al alcance de un objetivo. Ordena informacin de acuerdo a categoras, jerarquas y relaciones. Utiliza las tecnologas de la informacin y comunicacin para procesar e interpretar informacin. Elige las fuentes de informacin ms relevantes para un propsito especfico y discrimina entre ellas de acuerdo a su relevancia y confiabilidad. Estructura ideas y argumentos de manera clara, coherente y sinttica. Define metas y da seguimiento a sus procesos de construccin de conocimiento. Identifica las actividades que le resultan de menor y mayor inters y dificultad, reconociendo y controlando sus reacciones frente a retos y obstculos. 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 accin con pasos especficos. 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 didctica 1. Introduccin al Visual FoxPro. Inicio


Actividad: 1
Desarrolla lo que se pide, expresando tu opinin 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. Autoevaluacin

Evaluacin 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 Calificacin otorgada por el docente

62

UTILIZA VISUAL FOX PRO

Desarrollo
Introduccin al Visual Fox.
Visual Fox es uno de los gestores de Bases de Datos relacionales ms rpido 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 aplicacin Windows estndar, Visual Fox soporta interfaces MDI (Interfaz de Documento Mltiple), como la de Word, barras de herramientas, ayuda sensible al contexto, mltiples fuentes, acceso a bibliotecas de enlace dinmico (Dll), entre otras. Visual FoxPro es un lenguaje de programacin orientado a objetos y procedural, un Sistema Gestor de Bases de datos o Database Management System (DBMS), y desde la versin 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. Caractersticas 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 Programacin Orientado a objetos. Utilizacin 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, tambin puede conectarse con servidores de base de datos, tales como Oracle, Microsoft SQL Server o MySQL. Cuenta con un motor de generacin de informes renovado y muy flexible para soluciones ms robustas. Desde la versin 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 travs de ODBC (Open Database Connectivity). Este estndar, definido como Conectividad Abierta de Bases de Datos, permite abrir y consultar diversas bases de datos a travs 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 aos.

Programacin orientada a eventos.


En Visual FoxPro cada accin que se realiza es un evento, por ejemplo el movimiento del mouse, hacer clic sobre un botn y escribir algo en un cuadro de texto, entre otras. Por lo tanto, cuando se programa en Visual FoxPro, quedan atrs 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 artculo, simplemente se programa el evento respectivo, y de esta forma no es tan tedioso el mantenimiento del sistema. Es decir, si existe algn 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 funcin en la cual se pregunte cul fue el botn que se presion, y segn el valor, se ejecutan las instrucciones. En Visual FoxPro no es as, simplemente se programan instrucciones especficas para cada botn, e independientemente de que se presione otro no es necesario preguntar cul 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 ratn, o es algn otro evento.

BLOQUE 2

63

Programacin 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 botn, 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 botn tiene su propiedad de texto que es la que se ve dentro del botn, tambin 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 caractersticas de forma dinmica.

Caractersticas de la programacin orientada a objetos.


Es un entorno de desarrollo de sistemas. Puede llevar a un desarrollo ms rpido y eficaz y a prototipos ms precisos. Permite un desarrollo ms rpido 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 aadirse a otras aplicaciones sin necesidad de modificarla ms.

Se pueden combinar objetos para crear objetos nuevos y dinmicos.

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 caractersticas principales del Visual Fox Pro. a. _______________________________________________________________________________________________ b. _______________________________________________________________________________________________ c. _______________________________________________________________________________________________ 4. Qu es la programacin orientada a eventos? _______________________________________________________________________________________________ _______________________________________________________________________________________________ _______________________________________________________________________________________________ 5. Qu es la programacin orientada a objetos? _______________________________________________________________________________________________ _______________________________________________________________________________________________ _______________________________________________________________________________________________ 6. Menciona tres caractersticas de la programacin orientada a objetos. a. ____________________________________________________________________________________________ b. ____________________________________________________________________________________________ c. ____________________________________________________________________________________________ 7. Cul es la diferencia entre la programacin orientada a eventos y la programacin orientada a objetos? _______________________________________________________________________________________________ _______________________________________________________________________________________________ _______________________________________________________________________________________________ _______________________________________________________________________________________________ _______________________________________________________________________________________________ __________

BLOQUE 2

65

Actividad: 2 Conceptual Reconoce las ventajas y caractersticas del Visual FoxPro. Autoevaluacin

Evaluacin Producto: Cuestionario. Saberes Procedimental Analiza las ventajas y caractersticas del Visual FoxPro. C MC NC

Puntaje: Actitudinal Contesta responsablemente el cuestionario y participa en un debate grupal.

Calificacin otorgada por el docente

Tipos de generadores.
Los generadores son entornos de trabajo en los que se construyen componentes de una aplicacin 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 disear las pantallas de la aplicacin. Generador de consulta. Para construir conjuntos de datos utilizados en reportes y en pantallas de slo lectura. Generador de informes. Para construir informes para la pantalla o la impresora. Generador de mens. Construye el sistema de mens que ejecuta una aplicacin. Generador de tablas. Administra el formato de las tablas utilizadas en la aplicacin. Generador de cuadrculas. Permite aprender cmo las configuraciones de la propiedad de cuadrcula del objeto controlan la operacin de la cuadrcula.

Utiliza los asistentes.


Asistente es un conjunto de cuadro de dilogos, los cuales ayudan a crear, paso a paso, una determinada aplicacin, por ejemplo, un formulario. Asistente para formularios. Construye "Pantallas instantneas" con la estructura de las tablas, basndose en clases prediseadas, incluidos efectos especiales en las pantallas y botones de navegacin nter-construidos. Asistente para documentacin. Documenta la aplicacin. Asistente para informes. Disea informes, sencillos o complejos, utilizando un poco ms que la estructura de las tablas. Asistentes para: Tablas dinmicas, 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 podrs observar e identificar en la siguiente imagen.

66

UTILIZA VISUAL FOX PRO

Campos

Registros Tipos de campos.


Entre las caractersticas ms importantes de los campos se encuentran dos: no deben de contener caracteres especiales, a excepcin del carcter "Guin bajo" y tampoco pueden empezar con un nmero. Los campos pueden ser de tipo: Carcter. Cualquier cosa que se pueda teclear, puede ir en un campo de caracteres. Un carcter es lo mismo que un byte y un byte puede tener cualquier valor ASCII hasta 255, con unas cuantas excepciones. Numrico. Hasta un lmite de 18 dgitos, 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 numrico. Fecha. Se utiliza para almacenar la fecha en un formato interno numrico, cuya validacin y representacin es controlada en el mismo. Lgico. ste, ya sea verdadero o falso, es representado por T o F (del Ingls), 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 extensin .FPT, adems, pueden ser casi de cualquier tamao. General. Tambin son campos memos, excepto que usualmente almacenan otros tipos de objetos adems de texto como grficos, por ejemplo. Fecha-hora. Incluye la hora despus de la fecha, en el formato [MM/DD/AA hh:mm:ss]. Moneda. Es un campo numrico e incluye cuatro cifras decimales. Imagen. Como su nombre lo indica, es utilizado para guardar imgenes. Carcter binario. Campos de caracteres no sujetos a traducciones de pginas de cdigos. Memo binario. Campos memo con la misma caracterstica NOCPTRANS.

NOCPTRANS impide la conversin a otra pgina de cdigos distinta para los campos de tipo carcter y memo. Si la tabla se convierte a otra pgina de cdigos, los campos para los que se haya especificado NOCPTRANS no se convertirn. NOCPTRANS solamente se puede especificar para los campos de tipo carcter 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 conversin. 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 Funcin

Clase

Base de datos

Formularios

Consulta

Informes

Men

Tabla

68

UTILIZA VISUAL FOX PRO

Actividad: 3 (continuacin)
b) Los tipos de asistentes del Visual Fox Pro.

Asistentes

Funcin

Formularios

Documentacin

Informes

BLOQUE 2

69

Actividad: 3 (continuacin)
c) Los diferentes tipos de campo del Visual FoxPro.

Tipo

Definicin

Carcter

Numrico

Flotante

Fecha

Lgico

Memo

Moneda

Actividad: 3 Conceptual Identifica los componentes de los generadores, los asistentes y tipos de campo. Coevaluacin

Evaluacin 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 Calificacin otorgada por el docente

70

UTILIZA VISUAL FOX PRO

Modo de operacin.
Para comenzar a utilizar el programa: Inicio Microsoft Visual FoxPro

Botn de Inicio

Icono para acceder al Visual Fox Pro

Escritorio de Windows

Icono de Visual Fox Pro.

Al acceder por primera vez a Visual Fox Pro, se muestra una pantalla de bienvenida.

Introduccin 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 programacin 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 ms. 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
Despus 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 (continuacin)
b) De acuerdo con la informacin presentada en el video, Cul es la funcin de la ventana de comandos? _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________

c) Menciona dos ejemplos de comandos que se mencionan en el video. i. ii. ________________________________________________________________________________________ ________________________________________________________________________________________

Evaluacin Actividad: 4 Conceptual Reconoce el entorno de trabajo del Visual Fox Pro. Autoevaluacin Producto: Cuestionario. Saberes Procedimental Analiza el uso de la ventana de comando. C MC NC Puntaje: Actitudinal Muestra inters y actitud positiva en el desarrollo de la actividad.

Calificacin otorgada por el docente

BLOQUE 2

73

Descripcin de los componentes de la ventana.


Barra de Herramientas.

El visual nos proporciona una barra de herramientas estndar en la cual se encuentran las opciones que ms frecuentemente utilizamos al manipular un archivo.

Barra de Men.
Men Archivo. Permite llevar a cabo las principales operaciones con archivos (Nuevo, Cerrar, Guardar, Guardar como y Abrir).

Men Edicin. Por medio de las opciones de este men, se puede manipular la informacin de los diferentes archivos que se generen en visual.

74

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 tambin establecer el espaciado de los renglones. Por lo general, esta opcin permite los cambios sobre la escritura en visual. En la opcin de fuente se puede seleccionar el tipo de letra, estilo y tamao que se requieren.

BLOQUE 2

75

Men Herramientas. Una de las opciones ms 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, mens, informes, programas, consultas, etc. As mismo, la ejecucin de estas aplicaciones las podemos cancelar, reanudar o suspender, segn sea requerido. La opcin compilar se recomienda principalmente cuando se est programando en cdigo fuente, para hacer un anlisis de la sintaxis y semntica de las instrucciones y comandos del programa.

Men Ventana. Presenta opciones referentes a la visualizacin del entorno del visual, las cuales pueden ser: organizar, ocultar, borrar, recorrer y activar la ventana de comandos.

76

UTILIZA VISUAL FOX PRO

Men Ayuda. Visual proporciona varias opciones de ayuda por temas, contenido, ndice y bsqueda, adems de un soporte y un enlace a Microsoft en la Web, para descarga de material gratuito.

Operaciones bsicas.

Nuevo. Esta operacin permite crear diferentes tipos de archivos. Al pulsar sobre esta opcin, el visual proporciona un men contextual con las siguientes opciones.

BLOQUE 2

77

Abrir. Esta opcin da la pauta para abrir archivos, los cuales fueron previamente almacenados en algn dispositivo de almacenamiento.

Guardar. Esta opcin permite guardar un archivo de manera rpida, 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 opcin Guardar como. En Guardar como se debe asignar el nombre y tipo al archivo, adems 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 investigacin para completar cada una de las siguientes tablas y, posteriormente, participa en un debate grupal: a) Barra de herramientas estndar. Icono Nombre Funcin

BLOQUE 2

79

Actividad: 5 (continuacin)

b) Men Archivo.

Nombre

Funcin

Guardar como HTML

Revertir

Importar

Exportar

Enviar

80

UTILIZA VISUAL FOX PRO

Actividad: 5 (continuacin)
c) Men Edicin.

Nombre

Funcin

Buscar

Buscar siguiente

Reemplazar

Ir a la lnea

BLOQUE 2

81

Actividad: 5 (continuacin)
d) Men Programa.

Nombre

Funcin

Ejecutar

Reanudar

Suspender

Cancelar

Compilar

Evaluacin Actividad: 5 Conceptual Identifica las opciones de las barras de Men y de la barra de Herramientas Estndar. Autoevaluacin Producto: Tabla. Saberes Procedimental Analiza las principales opciones de las barras de Men y de la barra de herramientas Estndar. C MC NC Actitudinal Muestra inters en el trabajo colaborativo. Puntaje:

Calificacin otorgada por el docente

82

UTILIZA VISUAL FOX PRO

Secuencia didctica 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 continuacin se solicitan posteriormente comntalo con tus compaeros y docente. 1. Una agenda de los compaeros de tu grupo.

2.

Control de libros de la biblioteca del plantel.

Actividad: 1 Conceptual Reconoce la utilizacin de diversos tipos de campo, en diferentes contextos. Autoevaluacin

Evaluacin Producto: Ejercicio prctico. 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 compaeros y docente.

Calificacin otorgada por el docente

BLOQUE 2

83

Desarrollo
Implementacin de un proyecto.
Para utilizar la opcin 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. Despus utilizar las opciones de Nuevo archivo, o Asistente.

Si seleccionamos el botn 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 botn Save (Guardar).

Posteriormente se abrir la ventada del Administrador de Proyectos, desde donde se administran datos, documentos, clases, cdigos u otros.

Si se selecciona la pestaa 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 botn Nuevo. Al dar clic en el botn Nuevo, se tienen las condiciones de crear una base de datos nueva, utilizando ya sea el Asistente para bases de datos o el botn Nueva base de datos.

Opcin botn 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 afn a la informacin que se utilice ya que, normalmente, en los proyectos se utiliza ms 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 extensin *.dbc.

Al guardar la base de datos se inicia el Diseador 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

Descripcin de los botones del diseador de Bases de Datos.

Crear una nueva tabla. Agregar una tabla existente Eliminar una tabla seleccionada Modificar una tabla seleccionada Creacin de Vistas remotas Creacin de Vistas locales Editar Procedimientos almacenados en la Base de Datos Creacin de Conexiones con vistas remotas Examinar el contenido una tabla o base de datos.)

Crea una tabla en Visual Fox Pro.

Al pulsar el botn 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 relacin con la informacin que contiene y con extensin *.DBF, para identificar que es una Tabla. Nota. Despus de asignarle el nombre a la Tabla, el Visual FoxPro nos presenta una ventana para su diseo.
Antes de introducir los campos a la tabla, se recomienda llevar a cabo un anlisis de los datos que sta va a contener, ya que no es recomendable modificar su estructura.

86

UTILIZA VISUAL FOX PRO

El diseador de tablas, tiene tres pestaas: Campos, ndices y Tabla, donde cada uno es importante en la estructura de la tabla. La pestaa 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 Carcter, Monetario, Numrico, Flotante, Fecha, Date Time, etc., y posteriormente el Ancho.

BLOQUE 2

87

Ejemplo:

Al pulsar el botn Aceptar, Visual Fox Pro pregunta: Si la respuesta es afirmativa, estaremos en condicin 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 tambin se pueden crear desde el men Archivo, opcin Nuevo y seleccionando Tabla. A continuacin 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.

Descripcin del rea mostrar.


o o o Formato. Es el formato de salida del campo, ejemplo si fuera numrico 9,999.99 o si fuera caracter !!!!!!!!!!!!, para que slo acepte maysculas. Mscara de entrada. Igual que el Formato, slo que es para la entrada de datos. Ttulo. Descripcin ms precisa del campo, es de utilidad al disear los Formularios.

BLOQUE 2

89

Definicin de reglas de validacin a nivel de campo.


La validacin consiste en eventos que se ejecutan a nivel de campo. Por ejemplo: una validacin de un campo que solamente acepte nmeros positivos. (id > 0) Regla. Es la regla de validacin, 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 validacin del campo. Ejemplo: Solo se aceptan nmeros 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).

Definicin de ndices.
Luego de hacer la definicin de los campos, pasamos a la definicin de ndices de la tabla, que ser muy importante a la hora de crear las relaciones entre las tablas.

Nombre del ndice. Introducir el Nombre del archivo ndice, el cual es tambin conocido como TAG. Tipo. Principal. Llave primaria. Candidato. Llave candidata nico. Llave nica. Normal. Llave fornea. Nombre de la expresin.

90

UTILIZA VISUAL FOX PRO

Actividad: 2
Acude al centro de cmputo de tu plantel y, en binas, realiza la siguiente prctica. 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 opcin Nuevo crea un proyecto y llmalo proyecto_inicial. Comenta tu experiencia con tus compaeros 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 compaeros y profesor, finalmente, escribe tus conclusiones. _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________

Evaluacin Actividad: 2 Conceptual Reconoce las herramientas del Visual Fox Pro, para crear Proyectos y Bases de Datos. Coevaluacin Producto: Ejercicio prctico. Saberes Procedimental Analiza y emplea las herramientas de Visual Fox Pro, para la creacin de Proyectos y Bases de Datos. C MC NC Puntaje: Actitudinal Se esmera en la realizacin de la prctica.

Calificacin otorgada por el docente

BLOQUE 2

91

Actividad: 3
Acude al centro de cmputo de tu plantel y, en binas, realiza la siguiente prctica. No olvides Guardar y presentar a tu profesor. a) Crea una Tabla con el nombre alumnos, con los siguientes campos: matrcula, nombre, apellido paterno, apellido materno, fecha de nacimiento, direccin, colonia, telfono, correo electrnico y semestre. Guarda la tabla en la carpeta mi_primer_proyecto. Comenta tu experiencia con tus compaeros y profesor. Escribe tus conclusiones. _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ b) Captura informacin en la tabla alumnos, de tu grupo. Posteriormente comenta tu experiencia con tus compaeros y el profesor. Escribe tus conclusiones. _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________

Evaluacin Actividad: 3 Conceptual Reconoce las herramientas del Visual Fox Pro, para crear Tablas. Coevaluacin Producto: Ejercicio prctico. Saberes Procedimental Analiza y emplea las herramientas de Visual Fox Pro, para la creacin de Tablas. C MC NC Puntaje: Actitudinal Atiende las indicaciones del docente para la realizacin de la prctica.

Calificacin otorgada por el docente

92

UTILIZA VISUAL FOX PRO

Utiliza formulario.
Dentro del Proyecto tenemos otra pestaa denominada Documentos, la cual contiene Formularios, Informes y Etiquetas. La forma ms sencilla y funcional de crear un formulario es mediante el asistente.

Al momento de pulsar el botn Asistente para formularios se deben seguir las indicaciones que presenta.

A continuacin se selecciona la opcin de Asistente para formularios y, posteriormente, damos clic en el botn Aceptar.

A continuacin el Visual FoxPro presenta los pasos para crea un Formulario, utilizando el asistente. 1. 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.

BLOQUE 2

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.

Despus de la seleccin del campo que ser incluido en el formulario, pasamos al paso nmero dos pulsando el botn 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: Estndar. Cincelado. Sombreado. Enmarcado. En relieve. Sofisticado. Piedra. Flax. Multicolor.

As mismo, nos permite seleccionar el tipo de botn que se va a mostrar en el formulario. Adems 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 cules son los campos o etiquetas que sern 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, segn 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 botn 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 diseador 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 asignndole un nombre que lo distinga y que est relacionado con la informacin 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 cmputo y, en binas, realiza la siguiente prctica. Crea una Formulario con el nombre control_alumnos, incluyendo los siguientes campos: matrcula, nombre, apellido paterno, apellido materno, fecha de nacimiento, direccin, colonia, telfono, correo electrnico, semestre, serie (formacin propedutica) y capacitacin para el trabajo. Guarda la tabla en la carpeta mi_primer_proyecto. Comenta tu experiencia con tus compaeros y profesor. Finalmente, escribe tus conclusiones. _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ ___________________
Actividad: 4 Conceptual Reconoce las herramientas del Visual Fox Pro, para crear un Formulario. Coevaluacin Evaluacin Producto: Ejercicio prctico. Saberes Procedimental Analiza y emplea las herramientas de Visual Fox Pro, para la creacin de Formularios. C MC NC Puntaje: Actitudinal Atiende las indicaciones del docente para la realizacin de la prctica.

Calificacin otorgada por el docente

96

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 continuacin es necesario dar clic en el botn 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 botn 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. Presentacin. Con bandas. Informal.

4.

Elegir el diseo de nuestro informe, definiendo el nmero de columnas o filas, diseo del campo y orientacin 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 seleccin, dar clic sobre el campo deseado y posteriormente pulsar el botn agregar. Adems podemos ordenar nuestra informacin del registro en orden ascendente o descendente, posteriormente debemos pulsar el botn siguiente para continuar.

98

UTILIZA VISUAL FOX PRO

Si se desea quitar de esta rea algn campo seleccionado, basta con pulsar el botn quitar.

6.

Asistente para informes, solicita el nombre que le vamos asignar a nuestro informe, no olvidar que debe ser de acuerdo con la informacin que presenta el informe.

Adems, despus de asignarle el nombre debemos guardar el informe: Guardar el informe para uso posterior. Guardar el informe y modificarlo en el diseador 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 botn de vista preliminar.

BLOQUE 2

99

La ventana Vista preliminar de informes presenta: Primera pgina Ir a la pgina Pgina siguiente ltima pgina 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 cmputo y, en binas, realiza la siguiente prctica. Presntala a tu profesor. a) Crea un Informe con el nombre reporte_alumnos_fec, incluyendo los siguientes campos: matrcula, nombre, apellido paterno, apellido materno y fecha de nacimiento. Guarda la tabla en la carpeta mi_primer_proyecto. Comenta tu experiencia con tus compaeros y el profesor. Finalmente, escribe tus conclusiones. _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ b) Crea un Informe con el nombre reporte_alumnos_tel, incluye los siguientes campos: matrcula, nombre, apellido paterno, apellido materno y telfono. Guarda la tabla en la carpeta mi_primer_proyecto. Comenta tu experiencia con tus compaeros 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 compaeros y docente. Escribe tus conclusiones. _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________

BLOQUE 2

101

Actividad: 5 (continuacin)
d) Crea un Informe con el nombre reporte_alumnos_dir, incluyendo los campos: matrcula, nombre, apellido paterno, apellido materno y direccin. Guarda la tabla en la carpeta mi_primer_proyecto. Comenta tu experiencia con tus compaeros y profesor. Finalmente escribe tus conclusiones. _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ e) Crea un Informe con el nombre reporte_alumnos_correo, incluyendo los campos: matrcula, nombre, apellido paterno, apellido materno y correo electrnico. Guarda la tabla en la carpeta mi_primer_proyecto. Comenta tu experiencia con tus compaeros y profesor. Finalmente, escribe tus conclusiones. _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________

Actividad: 5 Conceptual Reconoce las herramientas del Visual FoxPro, para crear un Formulario. Coevaluacin

Evaluacin Producto: Ejercicio prctico. Saberes Procedimental Analiza y emplea las herramientas de Visual FoxPro, para la creacin de Formularios. C MC NC

Puntaje: Actitudinal Atiende las indicaciones del docente para la realizacin de la prctica.

Calificacin otorgada por el docente

102

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 opcin Consulta.

Visual presenta una ventana de seleccin de los asistentes. o o o Asistente para consultas. Asistente para grfico. 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 despus seleccionar la base de datos, pulsar el botn 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, Direccin y Telfono. Vamos a realizar la consulta, utilizando el campo Nombre, posteriormente, pulsar el botn 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, adems del botn 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 condicin de bsqueda. Para llevar a cabo la bsqueda se selecciona una de las condiciones que presenta el operador. A continuacin se define el Valor de la informacin que se va a buscar.

Es importante escribir el valor que se va a consultar, respetando las letras maysculas y las letras minsculas, de igual forma los caracteres especiales. Pulsar el botn vista previa para ver el panorama de la consulta.

BLOQUE 2

105

Utilizar los operadores lgicos, para llevar a cabo bsquedas basadas en dos registros.

Primeramente establecer los campos que se van a incluir en la bsqueda.

En seguida se define el Operador y el valor. Ejemplo 1: Para realizar la bsqueda de todos los registros con el nombre Ricardo y direccin en Ruiz Cortnez.

Ejemplo 2: Consulta es la bsqueda por apellido.

106

UTILIZA VISUAL FOX PRO

Actividad: 6
Acude al centro de cmputo para realiza la siguiente prctica en binas y presntala a tu profesor. a) Crea una Consulta con de la tabla alumnos, por medio del campo matrcula. Comenta tu experiencia con tus compaeros 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 compaeros y el profesor. Finalmente escribe tus conclusiones. _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ c) Crea una Consulta en la tabla alumnos, por medio de los campos matrcula y nombre. Comenta tu experiencia con tus compaeros y profesor. Finalmente, escribe tus conclusiones. _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________

BLOQUE 2

107

Actividad: 6 (continuacin)
d) Crea una Consulta con de la tabla alumnos, por medio del campos matricula o telfono. Posteriormente comenta tu experiencia con tus compaeros 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. Autoevaluacin

Evaluacin Producto: Ejercicio prctico. Saberes Procedimental Analiza y emplea las herramientas de Visual Fox Pro, para llevar a cabo una bsqueda. C MC NC

Puntaje: Actitudinal Atiende las indicaciones del docente para la realizacin de la prctica.

Calificacin otorgada por el docente

108

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 (continuacin)

Actividad: 7 Conceptual Reconoce los asistentes del Visual FoxPro, para la manipulacin de una base de datos. Coevaluacin

Evaluacin Producto: Ejercicio prctico. 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 realizacin de la prctica.

Calificacin otorgada por el docente

110

UTILIZA VISUAL FOX PRO

Generalidades de programacin de base de datos.

Competencias profesionales:
Desarrolla documentos electrnicos, de acuerdo con los requerimientos establecidos (software). Localiza, obtiene informacin y se comunica utilizando las tecnologas de la informacin y de comunicacin (software). Resuelve problemas de procesamiento de informacin utilizando lenguajes, manejadores de bases de datos y metodologas, de acuerdo con los requerimientos del usuario (software).

Unidad de competencia:

Identifica los objetivos y ventajas de la utilizacin de sistemas de gestin de bases de datos, y analiza las estructuras de diseo de archivos, para su operacin, manejo, desarrollo y mantenimiento, segn los requerimientos de la normalizacin 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 accin con base en criterios sustentados y en el marco de un proyecto de vida. Aplica distintas estrategias comunicativas segn quienes sean sus interlocutores, el contexto en el que se encuentra y los objetivos que persigue. Maneja las tecnologas de la informacin y la comunicacin para obtener informacin y expresar ideas. Sigue instrucciones y procedimientos de manera reflexiva, comprendiendo como cada uno de sus pasos contribuye al alcance de un objetivo. Ordena informacin de acuerdo a categoras, jerarquas y relaciones. Utiliza las tecnologas de la informacin y comunicacin para procesar e interpretar informacin. Elige las fuentes de informacin ms relevantes para un propsito especfico y discrimina entre ellas de acuerdo a su relevancia y confiabilidad. Estructura ideas y argumentos de manera clara, coherente y sinttica. Define metas y da seguimiento a sus procesos de construccin de conocimiento. Identifica las actividades que le resultan de menor y mayor inters y dificultad, reconociendo y controlando sus reacciones frente a retos y obstculos. 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 accin con pasos especficos. 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 didctica 1. Introduccin a los lenguajes de programacin. Inicio


Actividad: 1
Responde las siguientes preguntas donde expreses tu opinin y experiencia sobre el tema solicitado. Escribe tus repuestas. 1. Define Lenguaje. __________________________________________________________________________________________________ __________________________________________________________________________________________________ __________________________________________________________________________________________________ __________________________________________________________________________________________________ 2. Define Lenguaje de Programacin. __________________________________________________________________________________________________ __________________________________________________________________________________________________ __________________________________________________________________________________________________ __________________________________________________________________________________________________ 3. Menciona tres lenguajes de programacin. a) __________________________________________________________________________________________ b) __________________________________________________________________________________________ c) __________________________________________________________________________________________ 4. Explica brevemente la diferencia entre Algoritmo y Diagrama de Flujo.

__________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ __________________________________________________________________________________________________

Actividad: 1 Conceptual Reconoce los trminos sobre los lenguajes de programacin. Autoevaluacin

Evaluacin Producto: Cuestionario. Saberes Procedimental Analiza los conceptos de lenguajes de programacin. C MC NC

Puntaje: Actitudinal Atiende las indicaciones del profesor.

Calificacin otorgada por el docente

112

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Desarrollo
Definicin de lenguaje de programacin.
Un lenguaje de programacin es aquel elemento dentro de la informtica que nos permite crear programas mediante un conjunto de instrucciones, operadores y reglas de sintaxis; que pone a disposicin del programador para que este pueda comunicarse con los dispositivos hardware y software existentes.

Tipos de lenguajes de programacin. Lenguajes de bajo nivel.


Son lenguajes totalmente dependientes de la mquina, es decir que el programa que se realiza con este tipo de lenguajes no se puede migrar o utilizar en otras mquinas. Al estar prcticamente diseados a medida del hardware, aprovechan al mximo las caractersticas del mismo. Dentro de este grupo se encuentran: El lenguaje maquina: Este lenguaje ordena a la mquina las operaciones fundamentales para su funcionamiento. Consiste en la combinacin de 0's y 1's para formar las ordenes entendibles por el hardware de la mquina. Este lenguaje es mucho ms rpido que los lenguajes de alto nivel. La desventaja es que son bastantes difciles de manejar y usar, adems de tener cdigos fuente enormes donde encontrar algn error es casi imposible. El lenguaje ensamblador es un derivado del lenguaje mquina y est formado por abreviaturas de letras y nmeros llamadas mnemotcnicos. Con la aparicin de este lenguaje se crearon los programas traductores para poder pasar los programas escritos en lenguaje ensamblador a lenguaje mquina. Como ventaja con respecto al cdigo mquina es que los cdigos fuentes eran ms cortos y los programas creados ocupaban menos memoria. Las desventajas de este lenguaje siguen siendo prcticamente las mismas que las del lenguaje ensamblador, aadiendo la dificultad de tener que aprender un nuevo lenguaje difcil de probar y mantener.

Lenguajes de alto nivel.


Son aquellos que se encuentran ms cercanos al lenguaje natural que al lenguaje mquina. Estn 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 mquina a otra sin ningn tipo de problema. Estos lenguajes permiten al programador olvidarse por completo del funcionamiento interno de la maquina(s) para la que estn diseando el programa. Tan solo necesitan un traductor que entiendan el cdigo fuente como las caractersticas de la mquina. Sabas que
EDD's son las abreviaturas de Estructuras Dinmicas de Datos, algo muy utilizado en todos los lenguajes de programacin. Son estructuras que pueden cambiar

de tamao durante la ejecucin del programa. Nos permiten crear estructuras de datos que se adapten a las necesidades reales de un programa.

BLOQUE 3

113

Lenguajes de medio nivel.


Estos lenguajes se encuentran en un punto medio entre los dos anteriores. Dentro de estos lenguajes podra situarse el lenguaje C ya que puede acceder a los registros del sistema, trabajar con direcciones de memoria, todas ellas caractersticas 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 informacin relacionadas, y con inserciones multimedia (grficos, sonido...). HTML no es tcnicamente un lenguaje de programacin 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. Adems, Fox ofrece un acceso de informacin, bastante sencillo y fcil, incluso a las personas sin experiencia en programacin.

Visual Basic. Visual-Basic es una herramienta de diseo de aplicaciones para Windows, en la que estas se desarrollan en una gran parte a partir del diseo de una interface grfica. En una aplicacin Visual - Basic, el programa est formado por una parte de cdigo puro, y otras partes asociadas a los objetos que forman la interface grfica. Es por tanto un trmino medio entre la programacin tradicional, formada por una sucesin lineal de cdigo estructurado, y la programacin orientada a objetos. Combina ambas tendencias. Ya que no podemos decir que Visual Basic pertenezca por completo a uno de esos dos tipos de programacin, debemos inventar una palabra que la defina: Programacin Visual.

114

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Actividad: 2
Acude al centro de cmputo y en binas realiza la siguiente investigacin, posteriormente participa en un debate grupal. Completa la siguiente tabla sobre los tipos de programacin.

Tipos de Programacin

Definicin

Programacin Estructurada.

Programacin Modular.

Programacin Orientada a Objetos.

Programacin Concurrente.

Programacin Funcional.

Programacin Lgica.

Actividad: 2 Conceptual Reconoce los tipos de Programacin. Coevaluacin

Evaluacin Producto: Tabla. Saberes Procedimental Analiza los tipos de Programacin. C MC NC

Puntaje: Actitudinal Muestra inters durante el desarrollo de la investigacin.

Calificacin otorgada por el docente

BLOQUE 3

115

Visual Studio.
Microsoft Visual Studio es un entorno de desarrollo integrado (IDE, por sus siglas en ingls) para sistemas operativos Windows. Soporta varios lenguajes de programacin 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 versin net 2002). As se pueden crear aplicaciones que se intercomuniquen entre estaciones de trabajo, pginas web y dispositivos mviles. Adicionalmente, Microsoft ha puesto gratuitamente a disposicin de todo el mundo una versin 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 tamao, nicamente utiliza un procesador y un Gb de Ram, y no cuenta con el Agente de SQL Server. Visual Studio 2010 es la versin ms reciente de esta herramienta, acompaada por .NET Framework 4.0.

SQL.
El lenguaje de consulta estructurado o SQL (por sus siglas en ingls 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 caractersticas es el manejo del lgebra y el clculo relacional permitiendo efectuar consultas con el fin de recuperar -de una forma sencilla- informacin de inters de una base de datos, as como tambin 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 terica y su orientacin al manejo de conjuntos de registros, permite una alta productividad en codificacin y la orientacin a objetos. De esta forma una sola sentencia puede equivaler, a una o ms, que se utilizaran en un lenguaje de bajo nivel orientado a registros. El objetivo principal de SQL es la realizacin de consultas y clculos 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 funcin es ser una potente base de datos, capaz de trabajar en s misma o bien con conexin a otros lenguajes de programacin tales como, Visual Basic 6.0 o Visual Basic .NET. Adems 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, adems SQL adems realiza funciones de definicin, control y gestin de la base de datos. Las sentencias SQL se clasifican segn su finalidad dando origen a tres sub lenguajes: El DDL (Data Description Language), lenguaje de definicin 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 ms varia de un sistema a otro)

116

GENERALIDADES DE PROGRAMACIN 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 proteccin de los datos, la seguridad de las tablas y el establecimiento de restricciones en el acceso, as como elementos para coordinar la comparticin de datos por parte de usuarios concurrentes, asegurando que no interfieren unos con otros. El DML (Data Manipulation Language), lenguaje de manipulacin de datos, nos permite recuperar los datos almacenados en la base de datos y tambin incluye rdenes para permitir al usuario actualizar la base de datos aadiendo nuevos datos, suprimiendo datos antiguos o modificando datos previamente almacenados.

Cierre
Actividad: 3

Acude al centro de cmputo y en binas realiza la siguiente investigacin, posteriormente participa en un debate grupal. 1. Completa la siguiente tabla sobre las sentencias de los sub lenguajes DDL y DML. Sub Lenguajes Sentencia Funcin

Create Tabla

Create Index DDL Drop Table Drop Index Truncate Insert Delete DML Update Select Rollback

BLOQUE 3

117

Actividad: 3 (continuacin)
2. Contesta las siguientes preguntas. a) Qu diferencia existe entre Programacin Estructurada y Programacin Modular? _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ b) Cul es la diferencia principal entre la Programacin Orientada a Objeto y la Programacin Concurrente? _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________ _________________________________________________________________________________________________

Evaluacin Actividad: 3 Conceptual Reconoce las sentencias DDL y DML. Autoevaluacin Producto: Tabla. Saberes Procedimental Analiza la funcin de las sentencias DDL y DML C MC NC Puntaje: Actitudinal Participa activamente durante la investigacin y el debate.

Calificacin otorgada por el docente

118

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Secuencia didctica 2. Operaciones bsicas 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 Archivo

En esta columna escribe los bloques de cada Ficha

Inicio

Crear

Datos Externos

Herramientas de Bases de Datos

Campos

Tablas

Evaluacin Actividad: 1 Conceptual Reconoce los elementos de las fichas de la cinta de opciones. Autoevaluacin Producto: Tabla. Saberes Procedimental Analiza los elementos de las fichas de la cinta de opciones. C MC NC Puntaje: Actitudinal Atiende las indicaciones del profesor.

Calificacin otorgada por el docente

BLOQUE 3

119

Desarrollo
Introduccin a tablas en Microsoft Access.
Microsoft Access es un programa, utilizado en los sistemas operativos Microsoft Windows, para la gestin de Bases de Datos, creado y modificado por Microsoft, y orientado a ser usado en entornos personales o en pequeas organizaciones. Es un componente de la suite Microsoft Windows. Permite crear archivos de bases de datos relacionales que pueden ser fcilmente gestionadas por una interfaz grfica sencilla. Adems, estas bases de datos pueden ser consultadas por otros programas. Dentro de un sistema de informacin, entrara dentro de la categora de gestin, y no en la de ofimtica, como podra 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 informacin. A partir del estndar cada sistema ha desarrollado su propio SQL que puede variar de un sistema a otro, pero con cambios que no suponen ninguna complicacin para alguien que conozca un SQL concreto, como el que vamos a ver aqu correspondiente al Access 2000. A continuacin te presentamos una tabla de diferencias entre el Microsoft Access y el SQL Server.

Caractersticas
Procesamiento rpido. Arquitectura Cliente-Servidor. Nmero de usuarios conectados. Lmite de usuarios concurrentes. Registro de transacciones. Seguridad integrada. de consulta ms

Access
Bajo No 255 255 No No Recupera a partir de la ltima copia de seguridad. No es posible. Solo se puede compartir a travs de una Red. No No

SQL Server
Muy alto Si Ilimitado. Ilimitado. Si S. A nivel de SQL y de Sistema Operativo. Cualquier da y hora de copias anteriores. Si Si Si

Restauracin de datos. Administracin remota de la Base de Datos. Funciones. Meta Datos.

120

GENERALIDADES DE PROGRAMACIN 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 Cdigos.

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 PROGRAMACIN 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, Telfono y Electrnico.

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 informacin almacenada en la tabla.

Nombre asignado a la tabla.

124

GENERALIDADES DE PROGRAMACIN 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 cmputo y en binas crea una tabla en Microsoft Access de nombre Agenda, con los siguientes campos: Clave, Nombre, Apellido Paterno, Apellido Materno, Telfono y Correo Electrnico. Presenta un reporte de la prctica a tu profesor.

Evaluacin Actividad: 2 Conceptual Identifica los pasos necesarios para elaborar una tabla en Microsoft Access. Coevaluacin Producto: Reporte de Practica. Saberes Procedimental Crea los campos y registros de una tabla mediante el programa Access. C MC NC Actitudinal Muestra inters al realizar la prctica. Puntaje:

Calificacin otorgada por el docente

126

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Ficha de inicio. En esta ficha estn 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 continuacin 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 Diseo, despus de guardarla.

Vista hoja de datos. Esta vista es la ms recomendable para la captura de datos de la Tabla.

128

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Vista tabla dinmica.

Vista de diseo. Para ver la estructura de la tabla, damos clic en Vista Diseo.

BLOQUE 3

129

Estructura de la Tabla.

Vista SQL.
Puedes ver o editar la instruccin SQL en la vista SQL. Sin embargo, despus de hacer cambios en una consulta en la vista SQL, puede que su aspecto no sea el que tena en la Vista Diseo.

130

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Al dar clic sobre SQL Vista SQL, tendremos acceso al cdigo que genera consulta el cual puede ser es desarrollado en los lenguajes: Visual Basic, SQL, etc.

Desde la vista SQL se pueden generar los cdigos 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 cdigo en vista SQL.


Para observar el resultado del cdigo solo se deben seguir dos pasos: 1. Dar clic en el icono Ejecutar.

2.

Posteriormente observamos el resultado de la ejecucin del cdigo.

BLOQUE 3

131

Identifica los requerimientos mnimos de un proyecto.


No existe un parmetro para determinar los requerimientos mnimos 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 diseo de la consulta, Access construye en segundo plano las instrucciones SQL equivalentes. De hecho, la mayora de las propiedades de consulta de la hoja de propiedades de la vista Diseo de la consulta tienen clusulas y opciones equivalentes a las que estn disponibles en la vista SQL. Para realizar una consulta Access presenta dos opciones: Asistente para Consultas y Diseo de Consulta, vamos a utilizar la segunda opcin, para ello seguiremos los siguientes pasos: 1. Selecciona Diseo de consulta.

132

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

2. Para obtener la vista de diseo damos clic en Vista Diseo.

3. Debemos seleccionar la tabla, y posteriormente da clic en el botn Agregar, cerramos el cuadro de dialogo dando clic en el botn Cerrar.

Botn Agregar.

Botn Cerrar.

BLOQUE 3

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 Verificacin, indican que estos campos estn seleccionados en la consulta.

134

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

5. Para ejecutar la consulta damos clic en el Icono Ejecutar.

6. Vista despus de la Consulta.

BLOQUE 3

135

Actividad: 3
Acude al centro de cmputo 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 cdigo que presenta, comntalo con tu profesor.

Evaluacin Actividad: 3 Conceptual Identifica el predicado del lenguaje SQL. Coevaluacin Producto: Ejercicio prctico. Saberes Procedimental Analiza el predicado del Lenguaje SQL. C MC NC Puntaje: Actitudinal Atiende las indicaciones del docente para la realizacin de la prctica.

Calificacin otorgada por el docente

136

GENERALIDADES DE PROGRAMACIN 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.

Diseo del formulario.

Formulario en blanco.

Asistente para formularios.

Navegacin y ms 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 PROGRAMACIN DE BASE DE DATOS

Campos Seleccionados.

4. Despus de dar clic en el botn siguiente, en el cuadro de dialogo del Asistente se define la distribucin de los campos seleccionados en el formulario.

BLOQUE 3

139

5. Pulsamos clic en siguiente y a continuacin le asignamos el nombre al formulario y para terminar damos clic en el botn Finalizar.

Botn Finalizar.

La vista de nuestro Formulario ya terminado es la siguiente.

Botones para desplazarnos por los registros de la Tabla.

140

GENERALIDADES DE PROGRAMACIN 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.

Diseo 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 PROGRAMACIN DE BASE DE DATOS

Campos seleccionados.

Botn siguiente.

Despus de dar clic en el botn siguiente, el Asistente para Informes pregunta si se desea agregar algn agrupamiento.

Campos para agrupar.

Botones para agrupar campos.

BLOQUE 3

143

A continuacin se definen los criterios de ordenacin que se desea utilizar para los registros.

Campos para ordenar.

Nivel de ordenacin.

En seguida definimos la distribucin y orientacin de los campos seleccionados.

144

GENERALIDADES DE PROGRAMACIN 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 botn Finalizar.

Asignamos el nombre.

Finalmente obtenemos la Vista Preliminar.

BLOQUE 3

145

Cierre
Actividad: 4
Acude al centro de cmputo y en binas crea una tabla en Microsoft Access de nombre Agenda_2011, con los siguientes campos: Clave, Nombre, Apellido Paterno, Apellido Materno, Telfono y Correo Electrnico. Posteriormente crea una consulta, un formulario y un informe, presenta un reporte de la prctica a tu profesor.

Evaluacin Actividad: 4 Conceptual Identifica los elementos necesarios para crear un proyecto. Coevaluacin Producto: Ejercicio prctico. Saberes Procedimental Analiza la informacin que se utiliza para la estructura del proyecto. C MC NC Puntaje: Actitudinal Atiende las indicaciones del docente para la realizacin de la prctica.

Calificacin otorgada por el docente

146

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Secuencia didctica 3. Programacin bsica en SQL. Inicio


Actividad: 1
Responde las siguientes preguntas donde expreses tu opinin y experiencia sobre el tema solicitado. Escribe tus repuestas. 1. Qu es un Sistema de Gestin 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 bsicos de los lenguajes de programacin. Autoevaluacin

Evaluacin Producto: Cuestionario. Saberes Procedimental Analiza los conceptos bsicos de los lenguajes de programacin. C MC NC

Puntaje: Actitudinal Contesta responsablemente el cuestionario y participa en un debate grupal.

Calificacin otorgada por el docente

BLOQUE 3

147

Desarrollo
Qu es el SQL?
Las aplicaciones en red son cada da ms numerosas y verstiles. En muchos casos, el esquema bsico de operacin 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 sera realmente complicada a gestionar de no ser por la existencia de estndares que nos permiten el realizar las operaciones bsicas de una forma universal. Structured Query Language (SQL) es un lenguaje estndar de comunicacin con bases de datos. Hablamos por tanto de un lenguaje normalizado que nos permite trabajar con cualquier tipo de lenguaje (ASP o PHP) en combinacin con cualquier tipo de base de datos (MS Access, SQL Server, MySQL...). El hecho de que sea estndar no quiere decir que sea idntico para cada base de datos. En efecto, determinadas bases de datos implementan funciones especficas que no tienen necesariamente que funcionar en otras. Aparte de esta universalidad, el SQL posee otras dos caractersticas 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 estndar de acceso a bases de datos que utilizan los sistemas Microsoft. Las siglas significan Open DataBase Connectivity. A travs de ODBC, en un sistema Windows se puede conectar con cualquier base de datos. Bueno habra 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 conexin 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 espaol, 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 pgina web. Las bases de datos Access (Microsoft Jet) y SQL Server de Microsoft tambin tienen su driver ODBC y este ya se encuentra instalado en el Windows de fbrica.

Caractersticas del lenguaje.


Una sentencia SQL es como una frase (escrita en ingls) con la que decimos lo que queremos obtener y de donde obtenerlo. Todas las sentencias empiezan con un verbo (palabra reservada que indica la accin a realizar), seguido del resto de clusulas, 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 sintctico como el que se muestra a continuacin.

148

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Tipos de campos.
Como sabemos una base de datos est compuesta de tablas donde almacenamos registros catalogados en funcin de distintos campos (caractersticas). 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 bsqueda posteriormente y por otro, optimizar los recursos de memoria. Cada base de datos introduce tipos de valores de campo que no necesariamente estn presentes en otras. Sin embargo, existe un conjunto de tipos que estn representados en la totalidad de estas bases. Estos tipos comunes son los siguientes: Alfanumricos Numricos Booleanos Fechas Memos Contienen cifras y letras. Presentan una longitud limitada (255 caracteres) Existen de varios tipos, principalmente, enteros (sin decimales) y reales (con decimales). Poseen dos formas: Verdadero y falso (S o No) Almacenan fechas facilitando posteriormente su explotacin. Almacenar fechas de esta forma posibilita ordenar los registros por fechas o calcular los das entre una fecha y otra... Son campos alfanumricos de longitud ilimitada. Presentan el inconveniente de no poder ser indexados (veremos ms adelante lo que esto quiere decir).

Son campos numricos enteros que incrementan en una unidad su valor para cada registro Autoincrementables incorporado. Su utilidad resulta ms que evidente: Servir de identificador ya que resultan exclusivos de un registro.

Actividad: 2
En binas, completa lo que a continuacin se te solicita, posteriormente presntalo a tu profesor.

Completa la siguiente tabla sobre los tipos de Campos. Tipos de Campos Descripcin

Alfanumricos

Numricos

BLOQUE 3

149

Actividad: 2 (continuacin)

Tipos de Campos

Descripcin

Booleanos

Fechas

Memos

Autoincrementables

Actividad: 2 Conceptual Reconoce los tipos de campos del SQL. Coevaluacin

Evaluacin Producto: Tabla. Saberes Procedimental Analiza los tipos de campos del SQL. C MC NC

Puntaje: Actitudinal Atiende las indicaciones del docente para completar los cuadros, participa en el debate grupal.

Calificacin otorgada por el docente

150

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Tipos de datos SQL.


Los tipos de datos SQL se clasifican en 13 tipos de datos primarios y de varios sinnimos vlidos reconocidos por dichos tipos de datos. Los tipos de datos primarios son:

Tipo de Datos

Longitud

Descripcin

BINARY BIT BYTE COUNTER CURRENCY DATETIME

1 byte 1 byte 1 byte 4 bytes 8 bytes 8 bytes

Para consultas sobre tabla adjunta de productos de bases de datos que definen un tipo de datos Binario. Valores Si/No o True/False Un valor entero entre 0 y 255. Un nmero incrementado automticamente (de tipo Long) Un entero escalable entre 922.337.203.685.477,5808 y 922.337.203.685.477,5807. Un valor de fecha u hora entre los aos 100 y 9999. Un valor en punto flotante de precisin 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.

SINGLE

4 bytes

DOUBLE

8 bytes

Un valor en punto flotante de doble precisin 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. Un entero corto entre -32,768 y 32,767. Un entero largo entre -2,147,483,648 y 2,147,483,647. De cero a un mximo de 1.2 gigabytes.

SHORT LONG LONGTEXT

2 bytes 4 bytes 1 byte por carcter Segn se necesite 1 byte por carcter

LONGBINARY

De cero 1 gigabyte. Utilizado para objetos OLE.

TEXT

De cero a 255 caracteres.

BLOQUE 3

151

La siguiente tabla recoge los sinnimos de los tipos de datos definidos: Tipo de Dato BINARY Sinnimos VARBINARY BOOLEAN LOGICAL LOGICAL1 YESNO INTEGER1 AUTOINCREMENT MONEY DATE TIME TIMESTAMP FLOAT4 IEEESINGLE REAL FLOAT FLOAT8 IEEEDOUBLE NUMBER NUMERIC INTEGER2 SMALLINT INT INTEGER INTEGER4 GENERAL OLEOBJECT LONGCHAR MEMO NOTE ALPHANUMERIC CHAR - CHARACTER STRING - VARCHAR VALUE

BIT

BYTE COUNTER CURRENCY DATETIME

SINGLE

DOUBLE

SHORT

LONG

LONGBINARY

LONGTEXT

TEXT VARIANT (No Admitido)

152

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Actividad: 3
Lee el tema Tipos de datos SQL, Posteriormente, coloca la letra en el parntesis 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. Un nmero incrementado automticamente. (de tipo Long)

SHORT

E)

BIT

F)

De cero a un mximo de 1.2 gigabytes. Para consultas sobre tabla adjunta de productos de bases de datos que definen un tipo de datos Binario. Valores Si/No o True/False.

BINARY

G)

BYTE

H)

LONGTEXT

Actividad: 3 Conceptual Reconoce los tipos de datos de datos de SQL. Autoevaluacin

Evaluacin Producto: Relacin. Saberes Procedimental Analiza los tipos de datos de SQL. C MC NC

Puntaje: Actitudinal Muestra inters y actitud positiva en el desarrollo de la actividad.

Calificacin otorgada por el docente

BLOQUE 3

153

Tipos de sentencias y sus componentes sintcticos.


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 quedara otro grupo que no est dentro del lenguaje SQL sino del PLSQL.

Sentencia Manipulacin de datos SELECT INSERT DELETE UPDATE Definicin de datos CREATE TABLE DROP TABLE ALTER TABLE CREATE VIEW DROP VIEW CREATE INDEX DROP INDEX CREATE SYNOYM DROP SYNONYM Control de acceso GRANT REVOKE Control de transacciones COMMIT ROLLBACK

Descripcin
Recupera datos de la base de datos. Aade 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. Aade una nueva tabla a la base de datos. Suprime una tabla de la base de datos. Modifica la estructura de una tabla existente. Aade 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. Concede privilegios de acceso a usuarios. Suprime privilegios de acceso a usuarios Finaliza la transaccin actual. Devuelve a un estado precio a la transaccin 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.

DML

DDL

DCL

SQL Programtico DECLARE PLSQL OPEN FETCH CLOSE

154

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Componentes sintcticos.
La mayora de sentencias SQL tienen la misma estructura. Todas comienzan por un verbo (select, insert, update, create), a continuacin le sigue una o ms clusulas 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 sintctico.


Las palabras que aparecen en maysculas 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 minsculas son variables que el usuario deber sustituir por un dato concreto. En el diagrama tenemos nbcolumna, expresin-tabla y condicin-debsqueda. Una sentencia vlida se construye siguiendo la lnea a travs del diagrama hasta el punto que marca el final. Las lneas 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 Clusula WHERE. Definir la condicin de bsqueda.

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 cmputo e investiga la utilidad de los sinnimos de los tipos de datos de SQL, posteriormente participa en un debate grupal.

Tipo de Dato

Sinnimos
BOOLEAN LOGICAL LOGICAL1 YESNO

Utilidad

BIT

COUNTER

AUTOINCREMENT

DATETIME

DATE TIME TIMESTAMP ALPHANUMERIC CHAR - CHARACTER STRING - VARCHAR FLOAT4 IEEESINGLE REAL

TEXT

SINGLE

LONG

INT INTEGER INTEGER4

LONGTEXT

LONGCHAR MEMO NOTE

Actividad: 4 Conceptual Reconoce la utilidad de los sinnimos de los tipos de datos de SQL. Coevaluacin

Evaluacin Producto: Tabla. Saberes Procedimental Analiza la utilidad de los sinnimos de los tipos de datos de SQL. C MC NC

Puntaje: Actitudinal Muestra inters y actitud positiva en el desarrollo de la actividad.

Calificacin otorgada por el docente

156

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Actividad: 5
En equipo mixtos de tres, completa el cuadro sobre Tipos de Sentencias.

Sentencia

Grupo

Descripcin

SELECT

CREATE TABLE

GRANT

INSERT

DROP TABLE

REVOKE

DECLARE

Actividad: 5 Conceptual Identifica los grupos de las sentencias de SQL. Coevaluacin

Evaluacin Producto: Tabla. Saberes Procedimental Describe las sentencias de SQL. C MC NC

Puntaje: Actitudinal Es eficiente en el trabajo colaborativo.

Calificacin otorgada por el docente

BLOQUE 3

157

Cdigo SQL para crear una tabla.


En general, la mayora de las bases de datos poseen potentes editores de bases que permiten la creacin rpida 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 carcter temporal (para gestionar un carrito de compra por ejemplo) o bien permanente por necesidades concretas de nuestra aplicacin. En estos casos, podemos, a partir de una sentencia SQL, crear la tabla con el formato que deseemos lo cual nos puede ahorrar ms 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 caractersticas. Adems, puede ser necesario especificar cules de estos campos van a ser ndices y de qu tipo van a serlo. La sintaxis de creacin puede variar ligeramente de una base de datos a otra ya que los tipos de campo aceptados no estn completamente estandarizados. A continuacin los explicamos la sintaxis para la creacin de una Tabla y posteriormente presentamos ejemplos prcticos:

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 PROGRAMACIN DE BASE DE DATOS

Pongamos ahora como ejemplo la creacin 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 nmero entre parntesis. 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 explotacin a partir de las funciones previstas a tal efecto.

Por ejemplo para crear una tabla de artculos utilizaremos la siguiente rutina:

En las sentencias vemos que los campos alfanumricos son introducidos de la misma forma que los numricos. 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 creacin de tablas con sus caractersticas: Tipo Int o Integer Double o Real Char Varchar Date Blob Bit o Boolean Bytes 4 8 1/carcter 1/caracter+1 3 1/caracter+2 1 Descripcin Nmeros enteros. Existen otros tipos de mayor o menor longitud especficos de cada base de datos. Nmeros reales (grandes y con decimales). Permiten almacenar todo tipo de nmero no entero. Alfanumricos de longitud fija predefinida Alfanumricos de longitud variable Fechas, existen mltiples formatos especficos de cada base de datos Grandes textos no indexables. Almacenan un bit de informacin (verdadero o falso)

En la terminologa usada en SQL no se alude a las relaciones, del mismo modo que no se usa el trmino atributo, pero s la palabra columna, y no se habla de tupla, sino de lnea.

Sintaxix para crea tablas nuevas Create Table tabla (campo1 tipo (tamao) ndice1, campo2 tipo (tamao) ndice2,..., ndice multicampo,..)
En donde: tabla campo1 campo2 tipo tamao 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 tamao del campo slo se aplica para campos de tipo texto. Es una clusula CONSTRAINT que define el tipo de ndice a crear. Esta clusula en opcional. Es una clusula 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 clusula 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 PROGRAMACIN 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 ms llamado FechaNacimiento de tipo Fecha/Hora. Tambin 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 clusula CONSTRAINT.
Se utiliza la clusula CONSTRAINT en las instrucciones ALTER TABLE y CREATE TABLE para crear o eliminar ndices. Existen dos sintaxis para esta clusula dependiendo si desea Crear o Eliminar un ndice de un nico campo o si se trata de un campo multindice. Si se utiliza el motor de datos de Microsoft, slo podr utilizar esta clusula 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 mltiples:

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 clusula CONTRAINT debe aparecer inmediatamente despus de la especificacin del campo indexado. Si se desea crear un ndice con mltiples campos cuando se est utilizando las instrucciones ALTER TABLE o CREATE TABLE la clusula CONSTRAINT debe aparecer fuera de la clusula de creacin de tabla. ndice Unique Primary Key Descripcin 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 slo 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 ms de un campo, se debe utilizar una definicin de ndice de mltiples 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.

Foreign Key

162

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Actividad: 6
En Binas, realiza la siguiente prctica, verifica que no tengas errores en la sintaxis. Posteriormente presntalo 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, Telfono, Correo Electrnico.

BLOQUE 3

163

Actividad: 6 (continuacin)
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, Telfono, Correo Electrnico. Utiliza la Clusula Constraint, para crea un ndice nico que no permita valores repetidos de los campos Matricula y Correo Electrnico.

Actividad: 6 Conceptual Reconoce la sintaxis de la sentencia Create Table. Coevaluacin

Evaluacin Producto: Reporte de Practica. Saberes Procedimental Uyiliza la sentencia Create Table y sus anexos. C MC NC

Puntaje: Actitudinal Analiza de manera responsable los ejercicios de la prctica.

Calificacin otorgada por el docente

164

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Crea ndices en SQL.


Si se utiliza el motor de datos Jet de Microsoft slo 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:

Sabas que El motor Jet son unas libreras 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. Prohbe valores nulos en el ndice. Excluye del ndice los valores nulos incluidos en los campos que lo componen. Asigna al ndice la categora de clave principal, en cada tabla slo 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 todava un ndice. No necesita permiso o tener acceso a un servidor remoto para crear un pseudo ndice, adems 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 sera de slo lectura debido a la falta de un ndice.

Ejemplo: 1)
Crea un ndice llamado MiIndice en la tabla empleados con los campos Clave y Telfono.

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 diseo de una tabla en SQL.


Modifica el diseo 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 [(tamao)][Constraint ndice]Constraint ndice multicampo} | Drop {Column campo I Constraint nombre del ndice}}
En donde: tabla campo tipo tamao ndice ndice multicampo Es el nombre de la tabla que se desea modificar. Es el nombre del campo que se va a aadir o eliminar. Es el tipo de campo que se va a aadir. Es el tamao del campo que se va a aadir (slo 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.

Operacin Add Column Add Drop Column Drop

Descripcin Se utiliza para aadir un nuevo campo a la tabla, indicando el nombre, el tipo de campo y opcionalmente el tamao (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 continuacin de la palabra reservada CONSTRAINT.

166

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

A continuacin 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 clusula 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 instruccin Insert. La sintaxis es la siguiente: Insert Into nombre_tabla (nombre_campo1, nombre_campo2,...) Values (valor_campo1, valor_campo2...) Ejemplo.

Los campos no numricos o booleanos van delimitados por apostrofes: '.

Borrar registros en una tabla en SQL.


Para borrar un registro nos servimos de la instruccin Delete. En este caso debemos especificar cual o cuales son los registros que queremos borrar. Es por ello necesario establecer una seleccin que se llevara a cabo mediante la clusula Where. Sintaxis.

Delete From nombre_tabla Where condiciones_de_seleccin

168

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Ejemplo para borrar todos los registros de los clientes que se llamen Pedro lo haramos del siguiente modo:

Hay que tener cuidado con esta instruccin ya que si no especificamos una condicin con Where, lo que estamos haciendo es borrar toda la tabla:

Edita registros en una tabla en SQL.


Update es la instruccin que nos sirve para modificar nuestros registros. Es necesario especificar por medio de Where cules son los registros en los que queremos hacer efectivas nuestras modificaciones. Obviamente, tendremos que especificar cules 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_seleccin Ejemplo.

Realiza selecciones eficientemente.


La seleccin total o parcial de una tabla se lleva a cabo mediante la instruccin Select. En dicha seleccin hay que especificar: Los campos que queremos seleccionar. La tabla en la que hacemos la seleccin.

BLOQUE 3

169

Por ejemplo una seleccin del nombre y direccin de los clientes con una instruccin de este tipo:

Para seleccionar todos los campos, es decir, toda la tabla, podramos utilizar el comodn * del siguiente modo:

Resulta tambin muy til el filtrar los registros mediante condiciones que vienen expresadas despus de la clusula Where. Si quisisemos mostrar los clientes de una determinada ciudad usaramos una expresin como esta:

Adems, podramos ordenar los resultados en funcin de uno o varios de sus campos. Para este ltimo ejemplo los podramos ordenar por nombre as:

Teniendo en cuenta que puede haber ms de un cliente con el mismo nombre, podramos dar un segundo criterio que podra ser el apellido:

170

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Crea el cdigo para consultas bsicas en SQL.


La sintaxis bsica de una consulta de seleccin es la siguiente: Select Ejemplo: Campos From Tabla

Esta sentencia devuelve un conjunto de resultados con el campo nombre y telfono de la tabla clientes.

Utiliza el cdigo en SQL para actualizar una base de datos.


Crea una consulta de actualizacin que cambia los valores de los campos de una tabla especificada basndose en un criterio especfico. Su sintaxis es:

Update Tabla Set Campo1=Valor1, Campo2=Valor2, CampoN=ValorN

Where Criterio

Update es especialmente til cuando se desea cambiar un gran nmero de registros o cuando stos se encuentran en mltiples 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 actualizacin suprimimos la clusula Where todos los registros de la tabla sealada sern actualizados.

BLOQUE 3

171

Cierre
Actividad: 7
En Binas, realiza la siguiente prctica, posteriormente asiste al centro de cmputo, 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 Capacitacin.

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 especfico.

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 bsicas de una Tabla. Coevaluacin

Evaluacin Producto: Reporte de Practica. Saberes Procedimental Analiza la utilidad de las operaciones bsicas de una tabla. C MC NC

Puntaje: Actitudinal Muestra inters en la realizacin de la prctica.

Calificacin otorgada por el docente

172

GENERALIDADES DE PROGRAMACIN DE BASE DE DATOS

Bibliografa
Diseo de base de datos, segunda edicin. Sistemas Operativos Stallines Cuarta edicin. 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

S-ar putea să vă placă și