Base de Datos, Propiedades, Reglas de Validacin y las Relaciones.
Base de Datos, Pero Qu es una Base de Datos? Una Base de Datos es una coleccin de Datos Relacionados, que pueden ser estructurados en diferentes formas para cumplir con las necesidades de proceso y recuperacin de las organizaciones e individuos. (Sanders, D., 1983). En Visual FoxPro es un archivo que tiene una extensin .DBC y puede contener una o varias tablas, vistas, conexiones con orgenes de datos remotos y procedimientos almacenados. Una Tabla es la estructura fundamental de un sistema de administracin de bases de datos relacionales. En Visual FoxPro, una tabla almacena datos en registros (filas) y campos (columnas). Los datos suelen referirse a una categora determinada de cosas, como clientes, pedidos de clientes, empleados o piezas de inventario. Cada tabla de Visual FoxPro puede almacenarse en su propio archivo con una extensin .DBF o puede estar contenida en una base de datos.
Un Registro es una unidad de almacenamiento en una tabla. Todas las tablas pueden contener un gran nmero de registros, cada uno de los cuales consta de campos.
Campo es cualquier elemento de datos contenido en un registro. Uno o ms campos forman un registro de una tabla, y uno o ms registros forman una tabla.
Una Vista es una definicin de tabla virtual personalizada que puede ser local, remota o parametrizada. Las vistas hacen referencia a una o ms tablas, o a otras vistas. Pueden ser actualizables y pueden hacer referencia a tablas remotas.
La Conexin Remota es una definicin de conexin almacenada en una base de datos a la que puede hacer referencia por nombre al crear una vista remota. Tambin puede establecer propiedades en la conexin con nombre para optimizar la comunicacin entre Visual FoxPro y el origen remoto de datos. Cuando active una vista remota, la conexin de la vista se convertir en la canalizacin con el origen remoto de datos.
Un Procedimiento Almacenado es una base de datos. El procedimiento puede contener cualquier comando y funcin permitido en una funcin definida por el usuario. En un origen remoto de datos, una coleccin de instrucciones SQL almacenadas bajo un nombre en cualquier base de datos SQL. Para crear y/o aadir a una Base de Datos en nuestro proyecto, buscamos en el Men Principal de Visual FoxPro la opcin Archivo y seguidamente hacemos Click sobre la palabra nuevo o bien sobre abrir, dependiendo la accin que deseamos realizar: Para crear un nuevo Proyecto y/o Base de Datos. Para abrir un Proyecto y/o Base de Datos existente. Una vez que elegimos crear una base de datos nueva, aparecer en pantalla el Diseador o Generador de Base de Datos:
Generador de Bases de Datos: Muestra todas las tablas, vistas y relaciones contenidas en una base de datos. Cuando la ventana del Generador de bases de datos est activa, Visual FoxPro muestra el men Base de datos y la barra de herramientas Generador de bases de datos.
Cada tabla se representa por una ventana dimensionable que lista los campos de la tabla y los ndices, si existe alguno. El Generador de bases de datos muestra las relaciones persistentes mostrando lneas entre las tablas que conectan los ndices. Men de Base de Datos: En el men principal de Visual FoxPro, se activa el men Base de datos contiene comandos para la creacin y edicin de tablas en una base de datos. ueva tabla: Crea una nueva tabla usando un asistente o un generador. Agregar tabla: Aade una tabla existente a una base de datos. ueva vista remota: Crea una nueva vista remota usando un asistente o un generador. ueva vista local: Crea una nueva vista local usando un asistente o un generador. Quitar: Quita la tabla seleccionada de la base de datos o la elimina del disco. Modificar: Abre la tabla seleccionada en el Generador de tablas. Examinar: Muestra la tabla seleccionada en la ventana Examinar para edicin. Volver a generar ndices de tabla: Genera claves y reconstruye ndices para la tabla seleccionada. Quitar registros eliminados: Quita de forma permanente todos los registros de la tabla activa que estn marcados para eliminar. Editar relacin. Altera la relacin entre tablas. Integridad referencial: Muestra el generador de integridad referencial, en el que puede establecer las reglas que controlan cmo se insertan, actualizan o borran los registros en las tablas asociadas. Editar procedimientos almacenados: Muestra un procedimiento de Visual FoxPro en una ventana de edicin. Limpiar base de datos: Ejecuta el comando PACK para reducir el tamao de una base de datos quitando las filas que se han marcado para borrar. Barra de Herramientas del Generador: La barra de herramientas Generador de bases de datos se muestra cuando est activo el Generador de bases de datos. Esta barra de herramientas contiene los botones siguientes: Crea una nueva tabla usando un asistente o un generador. Agregar una tabla existente a una base de datos. Quita la tabla seleccionada de la base de datos o la elimina del disco. Crea una vista remota usando un asistente o un generador. Crea una vista local usando un asistente o un generador. Abre la tabla seleccionada en el Generador de tablas. Muestra la tabla seleccionada en la ventana Examinar para su edicin. Muestra un procedimiento almacenado de Visual FoxPro en la ventana de edicin. Como nuestro objetivo ser crear una Base de Datos, debemos generar las tablas (archivos) necesarias; tenemos tres opciones para crear una tabla nueva, bien sea a travs del Men de Base de Datos, utilizando el cono respectivo de la Barra de Herramientas o haciendo uso del comando Crate TABle desde la Ventana de Comandos, despus de ejecutar cualquiera de las tres acciones anteriores aparecer el siguiente Cuadro de dilogo:
Este cuadro de dilogo debes seguir los siguientes pasos: 1. Elegir la ubicacin fsica (Directorio, Unidad, etc.) de tu PC donde se guardar la Tabla a crear 2. Nombre de la Tabla: Especfica el nombre de la nueva tabla; la extensin DBF (Data Bases Field) la asume Visual Foxpro por defecto. Los nombres pueden tener hasta 128 caracteres de longitud. 3. Guardar, una vez que hayas completado los dos pasos anteriores, con solo pulsar el botn de guardar te permitir terminar de generar tu tabla. En acto seguido, aparece en pantalla el Diseador de Tablas, en el cual creas la Estructura de la Tabla deseada:
Diseados de Tablas: Utilice el Generador de tablas para crear y modificar tablas de base de datos, tablas libres, campos e ndices. El Generador de tablas le ayuda a implementar caractersticas avanzadas como reglas de validacin y valores predeterminados. Las tres siguientes opciones aparecen en la parte superior del Generador de tablas si lo abre cuando est abierta una base de datos:
ombre de tabla: Especifica el nombre de la tabla que se est creando o modificando. Para tablas de bases de datos, el nombre de la tabla aparece en el administrador de proyectos; y no es el nombre del archivo.
Base de datos: Muestra el nombre de la base de datos a la que pertenece la tabla si la tabla no es una tabla libre. Este cuadro es de slo lectura.
Botn "Propiedades de tabla": Muestra el cuadro de dilogo Propiedades de la tabla para la configuracin de la regla a nivel de fila y la validacin del texto de error, de los desencadenantes y de los comentarios.
Fichas del Generador de tablas:
Tabla: Muestra los campos de la tabla en una cuadrcula desplazable. La ficha tabla muestra informacin ligeramente diferente dependiendo de si abre el Generador de tablas cuando est abierta una base de datos. Si hay una base de datos abierta, la ficha incluye opciones para la configuracin de reglas de validacin. Cuando no hay una base de datos abierta, la ficha contiene slo las opciones bsicas de nombre de campo, tipo y formato.La ficha muestra los campos de la tabla en una cuadrcula desplazable. Cada fila contiene el nombre del campo, el tipo de dato, la anchura del carcter, el nmero de decimales y el soporte de valores nulos. Haga clic en la cuadrcula para modificar un campo.
Opciones de la ficha
ombre: Especifica el nombre del campo. No se aceptan espacios. Para las tablas de bases de datos, la longitud del nombre puede ser de hasta 128 caracteres.Campo:Cualquier elemento de datos contenido en un registro. Uno o ms campos forman un registro de una tabla, y uno o ms registros forman una tabla.
Tipo: Especifica el tipo de dato del campo. Haga clic en la flecha de arrastrar hacia abajo para seleccionar un tipo de la lista.
Ancho: Especifica la anchura en caracteres del campo. Valor numrico que especfica el tamao o la longitud que tendr el campo.
Decimal: Especifica el nmero de dgitos a la derecha del punto decimal. La columna "Decimal" se aplica a los tipos de datos numricos y de reales de doble precisin.
ULL: Cuando se activa, especifica que el campo puede aceptar valores nulos.Los valores nulos son: Igual a la ausencia de cualquier valor o diferente que cero, la cadena vaca ("") o blanco.
Botn "Insertar": Inserta un nuevo campo sobre el campo seleccionado.
Botn "Eliminar": Elimina el campo seleccionado de la tabla.
Propiedades de campo: Si est modificando una tabla de base de datos, el grupo de opciones "Propiedades de campo" aparece bajo la cuadrcula desplazable. La configuracin de las propiedades del campo seleccionado se especifica en este rea. Elija el botn de tres puntos a la derecha de cada configuracin de propiedad para mostrar el cuadro de dilogo Generador de expresiones, o teclee el tipo de expresin directamente. No se requieren las entradas paras estas opciones.
Regla de validacin: Especifica la regla a nivel de campo para reforzar la validacin de datos.validacin. Validacin es el proceso de comprobar si los datos introducidos cumplen ciertas condiciones o limitaciones.regla a nivel de campo. Una regla de validacin, asociada a un campo, que se activa cuando se inserta o cambia el valor del campo, y que normalmente se usa para verificar la entrada de datos y su exactitud. Las reglas a nivel de campo se activan antes que las reglas a nivel de registro y los desencadenantes, y funcionan durante las actualizaciones almacenadas en bfer.
Mensaje o Texto de validacin: Especifica el mensaje de error que se va a mostrar si falla una entrada para acomodarse a la regla de validacin a nivel de campo.
Valor predeterminado: Especifica el valor predeterminado para el campo. Valor Predeterminado: Una cantidad o cadena que usted designa como contenido para un campo cuando se agrega un nuevo registro a una tabla de base de datos. El valor predeterminado permanece en el campo hasta que usted introduzca un nuevo valor.
Ttulo o Encabezado: Especifica un nombre descriptivo para el campo. El ttulo aparece como el encabezamiento de columna cuando examina la tabla. El ttulo puede tener hasta 128 caracteres.
Comentario del campo: Almacena comentarios descriptivos sobre el campo. ndice:Contiene una cuadrcula desplazable para la definicin de ndices. La cuadrcula tiene cuatro columnas. Indice: Una serie de punteros ordenados lgicamente por los valores de una clave. Los ndices ofrecen acceso rpido a datos y pueden exigir la unicidad en las filas de una tabla. Los ndices de Visual FoxPro se mantienen en un archivo de ndice. Vea tambin ndice candidato, clave principal.
Opciones de la ficha
ombre: Especifica el nombre de etiqueta para el ndice. El botn de flecha a la izquierda del nombre de ndice especifica el orden ascendente o descendente. Seleccione el ndice y despus haga clic en el botn de flecha para cambiar el orden.
Orden: Forma en la cual se ordenarn los datos en el ndice, y que puede ser Ascendente o Descendente. Botn para mover: Este es un botn con una flecha de doble punta que se encuentra en el extremo izquierdo de la fila. Una vez que ha introducido dos o ms filas, utilice el botn para mover una fila hacia arriba o hacia abajo en la lista.
Tipo: Especifica el tipo de ndice Primario (slo si la tabla est contenida en una base de datos), Candidato, nico o Regular (el predeterminado). Cuando hace clic en una celda de esta columna, aparece una lista desde la cual puede seleccionar un tipo. No se requiere una entrada en este campo.
Principal: ndice que garantiza que slo se introduzcan valores nicos en un campo y determina el orden en el que se procesan los registros. Cada tabla puede contener nicamente un ndice principal. Esto garantiza la integridad referencial en una relacin persistente.Visual FoxPro devolver un error si especfica un ndice principal sobre un campo que contenga datos duplicados. Candidato: Refuerza la unicidad de los valores y puede ser un candidato para utilizarse como ndice principal. Pueden haber varios candidatos por tabla. Un ndice candidato nunca permite valores duplicados en la expresin o en los campos especficados. El nombre "Candidato" hace referencia al estado del ndice, puestos que estos no admiten valores duplicados, se convierten en "candidatos" para ser elegidos como ndice principal. Al igual que en el Principal, Visual FoxPro devolver un error si especfica un ndice candidato sobre un campo que contenga datos duplicados. nico: Un ndice nico permite valores duplicados y almacena una lista de cada valor nico en la tabla de ndices. Los ndices nicos no evitan el uso de valores duplicados, aunque slo almacenan la primera aparicin del valor o valores en el archivo de ndices. En este sentido, la palabra "nico" se refiere a las entradas del archivo de ndice, que slo contiene valores nicos, pues no almacena cada clave ms de una vez e ignora la segunda y posteriores apariciones de los valores no nicos. Las tablas indexadas con ndices nicos pueden contener valores duplicados. Los ndices nicos se admiten principalmente por compatibilidad con las versiones anteriores. Una tabla puede contener varios ndices nicos. ormal o Regular: Es un ndice que no refuerza la unicidad de los datos, pero puede ser utilizado para ordenar y buscar datos en consultas e informes, una tabla tambin admite varios ndices normales. Expresin:Especifica la expresin de ndice, como un nombre de campo. Haga clic en el botn para crear o editar una expresin en el Generador de expresiones. Una expresin puede tener hasta 240 caracteres.
Filtro:Especifica la expresin de filtro. Haga clic en el botn para crear o editar una expresin en el cuadro de dilogo del Generador de expresiones.
Botn "Insertar":Inserta un nuevo ndice sobre el ndice seleccionado en la cuadrcula.
Botn "Eliminar": Elimina el ndice seleccionado de la cuadrcula.
Tabla: Fija la regla a nivel de fila, el texto de error de validacin, y un comentario para la tabla. Este cuadro de dilogo aparece cuando se elige Propiedades de tabla en el Generador de tablas. Es necesario que haya una base de datos abierta para que aparezca el botn "Propiedades de tabla" en el Generador de tablas. Las tablas libres no pueden tener asociados comentarios, reglas o desencadenantes. Opciones de la ficha
El botn situado a la derecha de cada configuracin muestra el Generador de expresiones.
Opciones del cuadro de dilogo Regla de validacin: Especifica una regla a nivel de fila para hacer que se cumpla la validacin de datos.regla a nivel de registro Una regla de validacin, vinculada a un campo, que se activa cuando se inserta o modifica el registro, y que suele utilizarse para verificar la entrada de datos y su exactitud. Las reglas de validacin no se aplican cuando se eliminan registros. Las reglas de validacin a nivel de registro se activan despus de las reglas a nivel de campo y antes que los desencadenantes, y funcionan durante las actualizaciones almacenadas en bfer. registro. Registro: Una unidad de almacenamiento en una tabla. Todas las tablas pueden contener un gran nmero de registros, cada uno de los cuales consta de campos.
Mensaje o Texto de validacin: Especifica el mensaje de error que debe ser mostrado si una entrada no se ajusta a la regla de validacin a nivel de fila.
Desencadenates o Trigger: Cdigo de evento a nivel de registro que se ejecuta despus de una insercin, una actualizacin o una eliminacin. Es posible adjuntar distintas acciones a los distintos eventos. Los desencadenantes se ejecutan en ltimo lugar, despus de las reglas, y no se ejecutan durante las actualizaciones almacenadas en bfer. Suelen utilizarse para integridad entre tablas. A travs de los desencadenantes se logra que rigen la coherencia de datos, Referencial (RI): Las reglas Integridad especficamente las relaciones entre las claves principal y externa de tablas distintas. Visual FoxPro resuelve la integridad referencial mediante reglas a nivel de campo y a nivel de registro definidas por el usuario. El Generador de integridad referencial le ayuda a definir reglas para controlar cmo ser insertan, actualizan o eliminan registros de tablas relacionadas. ISERTAR: Especifica una regla que debe desencadenarse siempre que se inserta o se agrega un registro a la tabla. ACTUALIZAR: Especifica una regla que debe desencadenarse siempre que se actualiza un registro de la tabla. ELIMIAR: Especifica una regla que debe desencadenarse siempre que se elimina un registro de la tabla. Los tres procesos anteriores de actualizacin (Insercin, Eliminacin y Modificacin) de Tablas, pueden ser en: Cascada: Actualiza todos los registros relacionados de la(s) tabla(s) secundaria(s) con el nuevo valor. No se aplica al proceso de insercin Restringir: Prohibe la actualizacin si hay registros relacionados en la(s) tabla(s) secundaria(s) Ignorar: Permite la actualizacin y deja los registros relacionados slo en la(s) tabla(s) secundaria(s)
Una de las ventajas con la que cuenta el usuario con Visual FoxPro, es la manipulacin de los datos que este permite, es tarea principal del Analista Programador crear una slida estructura de los datos, para de esta forma aprovechar al mximo todas las ventajas y posibilidades que Visual FoxPro pone a su alcance. Una estructura de datos bien definida debe contemplar: ormalizar: Minimizar la duplicacin de informacin en una base de datos relacional mediante un diseo de tablas eficaz.
Relacin: Un vnculo entre tablas que permite acceder a los datos desde ms sitios que la tabla seleccionada actualmente. El vnculo es la condicin de combinacin. Para crear relaciones necesitar ndices en las tablas que desee relacionar.
Para preparar la creacin de una relacin, busque un campo comn en las dos tablas y agregue ndices. Por ejemplo, la tabla Libros y la tabla Detalles tienen un campo Isbn. Para establecer una relacin entre ellas, la tabla Libros necesita un ndice principal en el campo Isbn y la tabla Detalles necesita un ndice normal en su campo Isbn.
Relacin Uno a Uno (1:1): Una relacin entre tablas en la cual cada registro de la tabla primaria slo puede asociarse a un registro de la tabla relacionada.Utilice una relacin de Uno a Uno para acceder a un registro en cada una de las dos tablas. Las relaciones de Uno a Uno son extraas porque los registros pueden estar contenidos normalmente en la misma tabla Relacin Uno a Varios (1:): Una relacin entre tablas en la cual cada registro de la tabla primaria puede asociarse con varios registros de la tabla relacionada (el valor de cada clave principal puede aparecer varias veces en la tabla relacionada). Utilice este tipo de relacin para enlazar un solo registro de una tabla con varios registros de otra.
relacin varios a varios (:): Una relacin entre tablas en la que los registros de cada tabla tienen mltiples registros coincidentes en la tabla relacionada. Este tipo de relacin puede requerir ciertos cambios en el diseo de la base de datos o una tabla de uniones. Utilice esta relacin para establecer varios registros de una tabla con varios registros de otra.
Tabla Libre:Una tabla que no est contenida en una base de datos. Un archivo .DBF creado en una versin anterior de FoxPro es una tabla libre hasta que se agrega a una base de datos. Contrastar con tabla de base de datos.
Tabla Primaria: La tabla cuyas columnas estn referenciadas por otras tablas en una relacin uno a uno o uno a varios.
Tabla Principal: La tabla primaria o de control en una relacin uno a uno o uno a varios. Vea tambin tabla secundaria, tabla principal, tabla relacionada.
Tabla Relacionada: Las tablas que hacen referencia a columnas de otra tabla. Vea tambin tabla secundaria, tabla principal, tabla primaria.
Tabla Secundaria: La tabla relacionada o controlada en una relacin uno a uno o uno a varios entre tablas.
Tabla de Uniones: Una tabla creada para separar una relacin varios a varios entre dos tablas en dos relaciones uno a varios. La tabla de uniones contiene las claves principales de las dos tablas con la relacin varios a varios.
Clave Principal: La columna o columnas cuyos valores identifican de manera exclusiva una fila de una tabla.
Relacin Persistente: Relaciones entre tablas que duran ms que simplemente el tiempo de ejecucin. Las tablas deben estar en una base de datos para poder tener una relacin persistente. El segmento de lnea que une (relaciona) a dos tablas entre si, es lo que se conoce como Relacin Persistente
Relacin Temporal: Relacin entre tablas que se crea mediante el comando SET RELATION. Las relaciones temporales desaparecen al salir de Visual FoxPro. Generador de Expresiones: Le permite crear y editar expresiones. Una expresin puede ser tan simple como el nombre de un campo o tan compleja como un clculo incluyendo funciones IF inmediatas, concatenaciones, y conversiones de tipos de datos. La finalidad principal del Generador de expresiones es facilitar la creacin de expresiones proporcionndole listas de opciones adecuadas en cada paso. Se puede acceder a este cuadro de dilogo desde generadores, ventanas, generadores, y asistentes. Para crear una expresin, puede escribirla directamente en el cuadro de expresin, o puede seleccionar elementos de las listas desplegables de funciones para que Visual FoxPro las pegue en el cuadro de expresin.. El generador de Expresiones puede ser utilizado para las: Reglas de Validacin, Texto de Validacin, Valor Predeterminado, Expresin y/o Filtro de un ndice, Validacin de Registros y para crear Integridad Referencial o Desencadenantes.
Opciones del cuadro de dilogo Funciones: Contiene cuadros de lista de cuatro tipos de funciones. Cuando se selecciona una funcin de uno de los cuatro tipos, Visual FoxPro la pega automticamente en el cuadro de expresin. Cuando se estn generando expresiones para vistas remotas, Visual FoxPro presenta slo las funciones especficas de los datos de apoyo de destino.
Cadena: Presenta las funciones de cadenas de caracteres disponibles.
Lgicas: Presenta las funciones lgicas disponibles.
Matemticas:Presenta las funciones matemticas disponibles.
Fecha: Presenta las funciones de fecha y hora disponibles.
Expresin: Muestra la expresin que se est creando o editando.
Campos: Presenta los campos de la tabla o vista activa. Para pegar un campo en el cuadro de expresin, haga clic doble sobre el campo, o seleccione el campo y presione ENTER.
De tabla: Para mostrar campos de una tabla distinta. Presenta tablas y vistas que estn abiertas. Seleccione una tabla o una vista para actualizar el cuadro "Campos".
Variables: Presenta variables de memoria del sistema, matrices, y variables de memoria creadas por usted. Para pegar una variable en el cuadro de expresin, haga clic doble sobre la variable, o seleccione la variable y presione ENTRAR.
Verificar: Valida la sintaxis de la expresin del cuadro de expresin. Si la expresin es vlida, se muestra "La expresin es vlida" en la barra de estado. Si no es vlida, Visual FoxPro muestra un mensaje de error. Esta opcin no se activa para vistas remotas.
ota: Si se incluye una llamada a funcin definida por el usuario, Verificar indicar un error, pero no habr necesariamente un error cuando la expresin es evaluada en tiempo de ejecucin.
Opciones: Muestra el cuadro de dilogo Opciones del Generador de expresiones, en el que se pueden fijar las preferencias para el Generador de expresiones. Comentarios: Proporciona espacio para que escriba un comentario relativo a la tabla. Lo que escriba aqu aparece como descripcin en la parte inferior del Administrador de proyectos cuando se seleccione la tabla.
Terminada la parte preliminar del Manejo de Datos en Visual FoxPro, empecemos a construir nuestra Base de Datos y sus tablas respectivas.... Visual FoxPro. Construyendo la Estructura de los Datos.
En est parte nos dedicaremos a crear las tablas necesarias para nuestra Base de Datos, tomaremos como base de nuestro trabajo, el Sistema Penitenciario, pare el cual debemos construir la estructura de datos necesaria para manejar el mencionado sistema. Para crear la Base de Datos en nuestro proyecto Sistema Penitenciario, buscamos en el Men Principal de Visual FoxPro la opcin Archivo y seguidamente hacemos Click sobre la palabra nuevo o bien sobre icono respectivo y aparece en pantalla el Cuadro de Dilogo Nuevo:
Como vamos a crear un proyecto nuevo, el tipo de archivo a seleccionar es "Proyecto", y seguidamente un Click sobre el botn
Inmediatamente, se activa en pantalla la ventada del Administrador de Proyectos, cual nos permite, como su nombre lo indica "Administrar" nuestro proyecto:
Con la opcin que vamos a trabajar por los momentos en con la ficha Datos, el cual tienen entre sus componentes; Bases de Datos, Tablas Libres y Consultas.
Seleccionamos Bases de Datos y pulsamos el botn Una vez que elegimos crear una base de datos nueva, aparecer en pantalla el Diseador o Generador de Base de Datos:
A travs del Generador de Bases de Datos construiremos todas las tablas requeridas por el Sistema Penitenciario. Como no contiene ninguna tabla, solo se muestra la barra de herramientas junto al generador. Ahora bien, vamos a construir nuestra primera tabla: Reo.DBF ombre de Campo Tipo Longitud Codigo_Reo Caracter 8 Cedula_Reo Caracter 12 Nombre_Reo Caracter 30 Nacionalidad Caracter 20 Fec_Nac Fecha 8 Lugar_Nac Caracter 20 Edo_Civil Caracter 15 Direccion_1 Caracter 30 Direccion_2 Caracter 30 Instruccion Caracter 20 Profesion Caracter 20 Nombre_Padre Caracter 30 Nombre_Madre Caracter 30 Nombre_Esposa Caracter 30 Estatus Lgico
Para crear la tabla Reo.DBF debemos crear una estructura nueva que contenga las caractersticas de la tabla anterior, debemos hacer Click sobre la opcin ueva Tabla del Men de Base de Datos, localizado en el Men Principal de Visual FoxPro, con el comando CRATE TABLE desde la Ventana de Comandos o a travs de la Barra de Herramientas, con un Click sobre el siguiente cono:
Una vez que aparece el Cuadro de Dilogo Crear:
Este cuadro de dilogo debes seguir los siguientes pasos: 1. Elegir la ubicacin fsica (Directorio, Unidad, etc.) de tu PC donde se guardar la Tabla a crear, por defecto Visual FoxPro la guarda en el directorio donde se encuentra el mismo, es decir en el directorio de VFox 2. Nombre de la Tabla: Reo; la extensin DBF (Data Bases Field) la asume Visual Foxpro por defecto.. 3. Pulsar el Botn Guardar, una vez que hayas completado los dos pasos anteriores, con solo pulsar el botn de guardar te permitir terminar de generar tu tabla. En acto seguido, aparece en pantalla el Diseador de Tablas, en el cual creas la Estructura de la Tabla deseada:
En el Diseados de Tablas, es donde generas la estructura de la tabla y todo lo que esta implica (Indices, reglas de validacin, desencadenantes, etc.), aqu es donde comienza el verdadero trabajo. El proceso de crear una tabla es realmente sencillo, es como si llenamos un cuestionario. Debes tener presente que no debes pulsar ETER, hasta que no hayas completado todos los campos requeridos en la tabla en construccin; para cambiar de un campo a otro utiliza el Mouse, las Teclas de Navegacin o el Tabulador, recuerda, en ENTER es slo cuando ests seguro de haber completado tu taba. ombre: Se refiere al nombre fsico que tendrn nuestros campos dentro de cada una de las tablas. Ejem: Codigo_reo, Estatus, Direccion_1, etc. Tipo: Se refiere al tipo de datos asociado al campo. Ejem: Codigo_reo: Carcter; Estatus: Lgico. Ancho: Tamao que tendrn cada campo dentro de una tabla, es decir la longitud o cantidad mxima de caracteres que podr contener un campo. Ejem: Codigo_reo: 8 caracteres.terminado Decimal: Especifica el nmero de dgitos a la derecha del punto decimal. La columna "Decimal" se aplica a los tipos de datos numricos y de reales de doble precisin. ndice: Permite crear un ndice que estar formado por el campo seleccionado, ordenados en forma ascendente o descendente. ULL: Cuando se activa, especifica que el campo puede aceptar valores nulos. Los valores nulos son: Igual a la ausencia de cualquier valor o diferente que cero, la cadena vaca ("") o blanco. Botn "Insertar": Si queremos Insertar un nuevo campo sobre el campo seleccionado. Botn "Eliminar": Si deseamos Eliminar un campo seleccionado de la tabla.
Una vez que tengamos completa la estructura pulsamos la Tecla ENTER o hacemos Click sobre botn de aceptar, apareciendo en pantalla la siguiente ventana: . Por los momentos no vamos a introducir datos en nuestra tabla, por lo cual, hacemos Click sobre el Botn NO. quedando en pantalla entonces el Generador de Bases de datos, la Barra de Herramientas, acompaados de la tabla que acabamos de construir, slo se muestra el nombre de la tabla y los campos que la componen::
Si te fijaste bien, el Campo Codigo_reo fue creado con una extensin de 20 caracteres en vez de los 8 de la especificacin inicial, lo correcto es que tenga 8 y no 20 (no te preocupes que fue con toda la intensin del mundo). Cmo hago entonces para enmendar el error o para realizar cambios en una tabla que ya ha sido creada? Como toda estructura de datos debe ser dinmica, es decir, poseer la capacidad de adaptarse los constantes cambios, Visual FoxPro te permite realizar los cambios que t consideres necesarios sobre cualquier tabla y/o base de datos. Los pasos que debes seguir para modificar la tabla Reo.DBF, son los siguientes: Usando la Ventana de Comandos: Recuerda que si no esta visible, puedes activarla a travs de la Opcin Ventana del Men Principal o con la combinacin de las teclas CTRL+F12.. 1. Activar la respectiva tabla. Esto se realiza a travs del Comando Use acompaado del nombre de la respectiva tabla a activar y ENTER: USE REO . 2. Modificar la tabla activa. Una vez concluido el paso anterior, el comando MODIFY STRUCTURE o MODI STRU (Visual FoxPro acepta las cuatro (4) primeras letras de cualquier comando)
A travs del Men de Base de Datos del Men Principal de Visual FoxPro. 1. Activar la Tabla: Basta con hacer un Click sobre la tabla que se va a modificar: 2. Pulsar la Opcin Modificar del Men.
Utilizando la Barra de Herramientas para Bases de Datos: 1. Activar la Tabla: Basta con hacer un Click sobre la tabla que se va a modificar: 2. Utilizar el cono respectivo para modificar la tabla: En los dos casos anteriores, el borde del rectngulo donde aparece el nombre de la tabla se pone "azul" una vez que ha sido seleccionada. (Pasa de Gris a Azul, si son los colores estndar de Windows los que usa el sistema actualmente).
Sea cual sea el procedimiento que sigas para modificar la(s) Tabla(s), aparece nuevamente en pantalla el Diseador de Tablas, en el cual podrs realizar los cambios deseados: Cambiar el ombre, Tipo,Ancho, establecer Valores Decimales o ulos y Ordenar Ascendente o Desencadenantes en uno o en varios campos, tambin podrs Insertar un nuevo campo o Eliminar uno existente. Una vez que culmines con todos los cambios necesarios a la estructura de la tabla, debes pulsar el Botn de Aceptar, instantneamente aparece el siguiente cuadro de dilogo:
El cuadro de dilogo comprueba si los cambios hechos anteriormente van a ser aceptados como definitivos, si es afirmativa la respuesta pulsamos entonces el botn SI, ahora si queremos desechar todo los cambios pulsamos el Botn NO. El proceso de modificar la estructura de una tabla se repite cada vez que necesitemos realizar cambios en dicha tabla. Y ahora: Cmo puedo examinar lo que tengo dentro de alguna tabla? Una vez que han sido introducidos los datos a una tabla, es posible examinar, verificar y/o modificar lo que se ha guardado dentro de las mismas. Una vez ms Visual FoxPro te permite realizar estas actividades sobre cualquier tabla y/o base de datos. Los pasos que debes seguir para Examinar la tabla Reo.DBF, son los siguientes: Usando la Ventana de Comandos: 1. Activar la respectiva tabla. Esto se realiza a travs del Comando Use acompaado del nombre de la respectiva tabla a activar y ENTER: USE REO . 2. Para Examinar la tabla activa. Una vez concluido el paso anterior, el comando BROWSE o BROW.
A travs del Men de Base de Datos del Men Principal de Visual FoxPro. 1. Activar la Tabla: Basta con hacer un Click sobre la tabla que se va a modificar: 2. Pulsar la Opcin Examinar del Men.
Utilizando la Barra de Herramientas para Bases de Datos: 1. Activar la Tabla: Basta con hacer un Click sobre la tabla que se va a modificar: 2. Utilizar el cono respectivo para Examinar la tabla:
Las tres acciones anteriores desembocan en el siguiente recuadro:
En el se muestran todos los campos que contiene la tabla y el contenido del mismo, como hasta los momentos no hemos aadido datos a nuestra tabla, se muestra totalmente vaca.
Para llenar los campos de la Tabla Reo.DBF con los datos necesario, Qu debo hacer?. Ya realizamos los cambios preliminares en nuestra tabla, ahora bien, vamos a aadir datos a los campos que componen dicha estructura, es decir vamos a llenar los registros necesarios.. Los pasos que debes seguir para agregar datos a la tabla Reo.DBF, son los siguientes: Usando la Ventana de Comandos: 1. Activar la respectiva tabla. Esto se realiza a travs del Comando Use acompaado del nombre de la respectiva tabla a activar y ENTER: USE REO . 2. Para Examinar la tabla activa. Una vez concluido el paso anterior, el comando APPED o usando el otro comando APPED BLAK. Estos dos comandos sirven para aadir datos nuevos a una tabla, pero funcionan de manera diferente, mientras que el APPED te permite llenar un registro nuevo, el APPED BLAK crea un registro en BLANCO o totalmente VACIO, es decir, aade a la tabla un registro con los valores por defecto asociados al tipo de campo.
Usando el APPEND aparece en pantalla:
Que permite ir llenado cada uno de los campos que componen el registro.
El uso del APPEND BLANK genera:
La Punta de Flecha indica la existencia de un registro, en este caso totalmente vaco (Que no apareca en el recuadro similar ubicado un poco ms arriba de este). A travs del Men de Tabla del Men Principal de Visual FoxPro. Una vez iniciado el proceso de Examinar una Tabla, Visual FoxPro activa en el Men Principal la Opcin para manejar las Tablas 1. Pulsar la Opcin Aadir uevo Registro del Men.
Utilizando la Barra de Herramientas para Bases de Datos: 1. Activar la Tabla: Basta con hacer un Click sobre la tabla que se va a modificar: 2. Utilizar el cono respectivo para Examinar la tabla: 3. Una vez iniciado el proceso de Examinar, se activa el Men de Tabla y procedemos como en el caso anterior. Todos los casos anteriores (excepto el APPEND BLANK) generan el siguiente recuadro, donde puedes ir llenando cada uno de los campos que conforman la tabla con los datos respectivos hasta completar un registro, al llegar al ltimo campo, automticamente salta al primer campo del siguiente registro, as sucesivamente hasta que pulses la tecla ESC o cierres la ventana. Aqu puedes al mismo tiempo crear un registro nuevo o modificar algn datos de cualquier campo; por ejemplo, podras cambiar la fecha de nacimiento. Es posible moverse de un campo al otro haciendo uso de las Teclas de avegacin (Flechas de: Izquierda, Derecha, Arriba o Abajo) o a travs de la tecla que sirve de Tabulador (TAB).
Una vez que hayas terminado de registrar los datos, repite el proceso de Examinar la tabla nuevamente, haber que cambios se observan en la misma.
Ejecutado los procesos esenciales en la creacin y/o modificacin de una tabla, vamos a dedicarnos ahora a darle ms solidez a la estructura de la misma y por ende a los datos almacenados en dicha tabla. Proporcionar ms solidez a la estructura de una tabla cualquiera, se refiere a incluir en la misma aspectos que permitan ofrecer una mayor visin y seguridad a los datos que sern guardados en dicha estructura. Entre estos aspectos podemos mencionar: Reglas de validacin, Formatos o Encabezados de los Campos y la Creacin de los Indices necesarios. En el Diseador o Generador de Tablas, nos dedicaremos ahora a la forma como podemos Mostrar los Campos, la Validacin de los Mismos y aadir Comentarios (Diccionario de Datos) a cada Campo dentro de la tabla. Debes tener presente que cada uno de los campos tiene o puede tener todas estas opciones independientemente de los otros campos, es decir; puedes incluir reglas a unos campos y a otros no. Entonces, primero seleccionas el campo con el que quieres trabajar y luego realizas las actividades deseadas. El diseador de tablas del recuadro de abajo, el campo activo es codigo_reo, a dicho campo es al que se le aplican las propiedades de los campos.
Mostrar: Especfica las propiedades de formato para los datos que se introducen y se presentan en el campo.
Formato: Especifique la expresin sobre el uso de maysculas, el tamao y el estilo para presentar el campo en la ventana Examinar, en formularios o informes. Los valores de propiedad dentro del formulario o informe pueden suplantar esta expresin. (Como se guarda el campo). Mscara de Entrada: Especfica el formato para los valores cuando se introducen en el campo. Por ejemplo, los nmeros de telfono podran tener un formato como (999) 999- 9999. Ttulo o Encabezado: Especfica la etiqueta que aparece para el campo en la ventana Examinar, los formularios o los informes. Los valores de propiedad dentro del formulario o informe pueden suplantar esta configuracin. Validacin de Campos: Si est modificando una tabla de base de datos, el grupo de opciones Propiedades de campo aparece debajo de la cuadrcula desplazable. Los valores de las propiedades para el campo seleccionado se especifican en este rea. Elija el botn de dilogo a la derecha del valor de cada propiedad para presentar el Generador de expresiones o escriba la expresin directamente. No se requieren entradas para estas opciones.
Regla de Validacin: Especfica la regla a nivel de campo para reforzar la validacin de datos. Mensaje o Texto de Validacin: Especfica el mensaje de error que se va a presentar si una entrada viola la regla de validacin a nivel de campo. Valor Predeterminado: Especfica el valor predeterminado para el campo. Asignar tipo de Campo a Clases: Para especificar una clase de control predeterminada, establezca la biblioteca y clase que desea crear cuando arrastre el campo a un formulario.
Mostrar Biblioteca: Especfica la ruta de acceso y el nombre de archivo para la biblioteca de clases. Para examinar dnde est un archivo, utilice el botn de dilogo. Mostrar Clase: Especfica la clase de control predeterminada para el campo. Comentario de Campo: Proporciona un espacio para escribir notas acerca del campo. Aqu puedes incluir una descripcin detallada de cada uno de los campo, como por ejemplo: la funcin del campo dentro de la tabla, etc.
Cmo Incluyo Propiedades a mis campos, entonces?
La respuesta es muy fcil (recuerda que primero debes seleccionar el campo), puedes utilizar para ello el Generador de Expresiones o trabajar directamente sobre el rectngulo de cada opcin. El Generador de Expresiones est presente en aquellas opciones donde aparece un pequeo recuadro gris con tres puntos, situado al lado del recuadro blanco:
Si trabajas directamente sobre el recuadro blanco no tienes la oportunidad de comprobar (al momento) si son vlidas las expresiones y/o condiciones que incluyes dentro de dichos recuadros:
Si por el contrario utilizas el Generador de Expresiones (en aquellas que te lo permiten) podrs probar en ese mismo instante si lo que ests haciendo es vlido o no para Visual FoxPro:
Si compruebas la regla de validacin, a travs del Botn Comprobar, inmediatamente te emite un mensaje sealando un error. Si te fijas bien, la expresin establece que codigo_reo debe ser diferente, pero no dice de quien, y all est el error. Lo correcto sera establecer: codigo_reo <> " ", comprueba ahora a ver que pasa. Est regla establece que no puede haber en toda la tabla, un campo cdigo de reo en blanco, si ya existe un cdigo en blanco Visual FoxPro emitir un mensaje indicando la situacin.
Ahora bien, si por el contrario t expresin es vlida, Visual FoxPro lo indica en la barra de estado:
Entonces puedes utilizar el Generador de Expresiones si no ests seguro o si quieres estar ms seguro de las acciones que ejecutas. Una vez que hayas culminado con todo el trabajo, pulsas el Botn Aceptar, y enseguida a parece en pantalla el siguiente cuadro de dilogo:
Como todo el trabajo que acabamos de realizar debe ser permanente, pulsamos el Botn SI. Veamos ahora como quedo mi tabla despus de estos cambios. Debes Examinar nuevamente tu tabla, para verificar el trabajo realizado. As se vea t tabla, antes de los cambios:
Y ahora se ve as, fjate en los Ttulos y la Mscara (como se muestran los datos) de los campos , Existe alguna diferencia?
Prueba ahora Aadir un nuevo registro, e intenta dejar en Blanco el campo cdigo de reo, haber que sucede.
Te apareci este mensaje verdad, bueno las reglas de validacin dentro de una tabla representan o pueden ser vistos como lneas de cdigo que validan la entrada de datos a las tablas. Antes de pasar al siguiente captulo, crea una segunda tabla llamada Ingreso.DBF, segn la siguiente estructura: Nombre del Campo: Tipo: Ancho: Codigo_reo Caracter 8 Nro_Boleta_enc Caracter 15 Nro_Oficio Caracter 15 Tribunal Caracter 30 Nro_Orden Caracter 15 Fecha_Ingreso Fecha os quedan pendiente dos tareas ms para terminar de afinar la tabla y por ende la Base de Datos.... Visual FoxPro. Integridad Referencial: Indices y los Desencadenantes o Triggers.
En est parte nos dedicaremos a crear o generar los mecanismos necesarios, que permitan u ofrezcan seguridad en los datos e informacin que son almacenados en las tablas y/o bases de datos. Esta seguridad y confiabilidad de los datos se conoce como Integridad Referencial, la cual controla la forma como se Actualizan, se Eliminan y se Insertan datos en la Base de Datos. En pocas palabras la Integridad Referencial se utiliza o tiene como principal objetivo Evitar la duplicidad o Redundancia de Datos en la estructura; dentro de un sistema no pueden haber dos personas o dos objetos con la misma referencia, es decir, no pueden existir dos o ms libros con el mismo ISBN o cota, no pueden existir vehculos con el mismo Serial de Carrocera o Motor y no pueden existir varias personas con el mismo nmero de identidad. Esto es lo que se busca evitar con la Integridad Referencia de una Base de datos. Integridad Referncial! Y cmo logro eso?. Una Integridad Referencial abarca reglas a nivel de campos y de registros, empecemos entonces a crear las reglas que incluyen a los campos. Vamos a crear los Indices dentro de las tablas (recuerda que en nuestra Base de Datos deben existir actualmente dos tablas: REO e INGRESO).
Ahora menos entiendo, Un Indice?. Para crear los ndices en una tabla, debemos seguir los pasos para Modificar una tabla, una vez que aparece el Diseador o Generador de Tablas, seleccionamos la pestaa ndices, que muestra el siguiente cuadro:
ndice:Contiene una cuadrcula desplazable para la definicin de ndices. La cuadrcula tiene cuatro columnas. Indice: Una serie de punteros ordenados lgicamente por los valores de una clave. Los ndices ofrecen acceso rpido a datos y pueden exigir la unicidad en las filas de una tabla. Los ndices de Visual FoxPro se mantienen en un archivo de ndice. Vea tambin ndice candidato, clave principal.
Opciones de la ficha
Orden: Forma en la cual se ordenarn los datos en el ndice, y que puede ser Ascendente o Descendente. Basta con un Click sobre la Flecha, para que esta cambie de orientacin ombre: Especifica el nombre de etiqueta para el ndice. Es el nombre fsico con el cual se guardar el ndice creado. Las Bases de Datos tienen extensin DBC, las Tablas DBF y los ndices IDX.
Botn para mover: Este es un botn con una flecha de doble punta que se encuentra en el extremo izquierdo de la fila. Una vez que ha introducido dos o ms filas, utilice el botn para mover una fila hacia arriba o hacia abajo en la lista.
Tipo: Especifica el tipo de ndice. Primario (slo si la tabla est contenida en una base de datos), Candidato, nico o Regular o Normal (el predeterminado). Cuando hace clic en una celda de esta columna, aparece una lista desde la cual puede seleccionar un tipo. No se requiere una entrada en este campo.
Expresin: Especfica la expresin de ndice, como un nombre de campo o combinaciones entre varios campos. Haga clic en el botn para crear o editar una expresin en el Generador de expresiones. Una expresin puede tener hasta 240 caracteres.
Filtro: Especfica la expresin de filtro.Un filtro se utiliza para crear un ndice que contenga datos "Filtrados" a conveniencia del usuario, es decir puede crear un ndice por ciudad, pero filtrando que ese ndice solo contenga las ciudades cuya poblacin sea mayor de 1 milln de habitantes. Haga clic en el botn para crear o editar una expresin en el cuadro de dilogo del Generador de expresiones.
Botn "Insertar":Inserta un nuevo ndice sobre el ndice seleccionado en la cuadrcula.
Botn "Eliminar": Elimina el ndice seleccionado de la cuadrcula. Para crear un ndice debemos seguir los siguientes pasos: 1. ombre: Debemos asignarle un nombre al ndice que estamos creando, aqu pueden privar muchos criterios, pero una recomendacin personal, es que se le asigne el mismo nombre que asocie el ndice con la tabla a la cual pertenece. Tambin es vlido colocarle como nombre el mismo del campo que lo genera. Una vez que se establece el nombre se activan todas las dems opciones del cuadro. El nombre acepta una longitud de hasta diez (10) Caracteres como mximo. Por los momentos vamos asignarle el mismo nombre del campo.
2. Tipo: Se refiere al tipo (Principal, Candidato, nico o Regular) de ndice que vamos a crear. Como seleccionar o asignar un tipo a cada ndice, muy fcil: Un ndice Principal (Clave Primaria o Campo Clave) se utiliza para evitar la duplicidad en los datos, es decir; que no existan en este caso dos reos con el mismo cdigo, al establecer el campo codigo_reo como principal nunca se aceptarn datos repetidos y los datos se procesan en el mismo orden de ingreso. Slo puede existir un ndice Principal dentro de una Tabla. Un ndice ormal o Regular es un tipo de ndice usado bsicamente para ordenar en forma ascendente o descendente los datos de una tabla, pero no evitan la duplicidad de los datos, entonces pueden existir mltiples ndice de este tipo dentro de una misma tabla; entonces puede crear un ndice que ordene por nombre, cdula, nacionalidad, fecha de nacimiento, y hasta por cdigo del reo. El tipo nico se mantiene en Visual FoxPro por compatibilidad con versiones anteriores, este tipo crea un ndice que contiene una lista de los datos, sin tomar en cuanta el nmero de apariciones que estos tengan dentro de la tabla, sern reflejados una sola vez dentro del ndice, es decir, toma en cuenta nicamente la primera aparicin de un dato y omite las apariciones sucesivas, una utilidad de este tipo de ndice dentro de la tabla Reo.DBF, sera por ejemplo crear una lista de todos los lugares de nacimientos de los presos, como es lgico, gran cantidad de reos proceden de la misma ciudad, es decir, se repiten varias veces exactamente el sitio de nacimiento, si se genera un ndice nico con el campo lugar_nac, se creara una lista con todos los lugares de nacimientos de los presos, sin repetir varias veces un mismo sitio. El tipo que nos queda, el Candidato, es un "Casi Principal" y funciona de la misma manera que el tipo Principal, ya que es un potencial Candidato a ser Principal. Todos los tipos exceptuando el Principal, pueden aparecer ms de una vez dentro de una misma tabla.
3. Expresin: El campo o grupo de campos que sern utilizados para generar el ndice. Si no recordamos exactamente que nombre le colocamos al campo, podemos utilizar el Generador de Expresiones, el cual activamos con un Click sobre el recuadro gris con tres puntos, situado junto al rectngulo blanco de la Expresin:
Si decidimos utilizar el Generador de Expresiones , est aparece en pantalla, con un "Doble Click" sobre el campo correspondiente este pasa al recuadro de Expresin o si deseas puedes teclear la expresin (nombre del campo) que utilizars para generar el ndice. El generador de indica adems las diferentes funciones que puedes emplear si vas a trabajar con la combinacin de varios campos.
Podemos usar un slo campo. codigo_reo o la combinacin de varios de ellos: codigo_reo+nombre_reo (utilizando para ello el manejo y/o manipulacin de campos).
ya tenemos nuestro primer ndice dentro de la tabla Reo:DBF, crea ahora los siguientes ndices: Nombre del ndice: Tipo: Expresin: Cedula_reo Candidato Cedula_reo Nombre_reo Regular - Normal Nombre_reo Nacional nico Nacionalidad Fec_nac Regular - Normal Fec_nac Lugar_nac nico Lugar_nac Instr_Prof Regular - Normal Instruccion + Profesion Codig2_reo Principal Codigo_reo Repite el mismo procedimiento para la tabla Ingreso.DBF y crea los siguientes ndices: Nombre del ndice: Tipo: Expresin: Codigo_reo Regular - Normal Codigo_reo Nro_boleta Regular - Normal Nro_boleta_enc Nro_orden nico Nro_orden Fe_ingreso Regular - Normal Fecha_ingreso Tribunal nico Tribunal Tri_nros Regular - Normal tribuanl+Nro_orden_enc+nro_orden+Nro_oficio Nro_oficio Regular - Normal Nro_oficio No pudiste crear el ndice Codig2_reo como Principal, Verdad?, recuerda que dentro de una tabla slo puede existir un ndice principal y como ya existe un ndice Principal dentro de la tabla Reo.DBF, el ndice Reo8 no puede ser Principal, cmbialo por Regular - Normal.
En el Diseador de Bases de datos verifica si se crearon todos los ndices, para ello, en cada una de las tablas te mueves al final de la misma, ah deben aparecer todos los ndice creados anteriormente:
Nuestra Base de Datos cuenta ahora con dos tablas, que poseen informacin relacionada (en ambas aparece el campo codigo_reo, que deben ser del mismo tipo y las misma longitud). Vamos entonces a establecer un Relacin Persistente entre ambas tablas. Si quieres probar como funcionan ts ndices, adiciona nuevos registros a tus tablas (USE, APPEND) y luego activa los diferntes ndices de la siguiente manera:
Debe mostrar los registros en el mismo orden en que fueron ingresados:
Ahora prueba con los siguientes comandos, el SET ORDER TO (Numero) activa segn el nmero uno de los ndices creados, Set Order To 1, activar entonces el primer ndice creado y as sucesivamente:
Recuerdas cual fue el primer ndice creado en la tabla Reo.DBF:
Con el SET ORDER TO 2, muestra:
Existe alguna diferencia entre estos datos y los que se muestran en la ventana anterior, la respuesta es Si, fijate como aparecen los datos, ordenados por Cdula, prueba entonces con los dems nmeros. Informacin Relacionada, Relacin Persistente: Cmo? Una de las ventajas con la que cuenta el usuario con Visual FoxPro, es la manipulacin de los datos que este permite, es tarea principal del Analista Programador crear una slida estructura de los datos, para de esta forma aprovechar al mximo todas las ventajas y posibilidades que Visual FoxPro pone a su alcance. Cuando se habla de tablas relacionadas, se dice que son tablas que contienen informacin similar, contenida en una tabla primaria (donde existe el ndice principal) asociada a una tabla secundaria que contiene, est relacin viene dada por el proceso de normalizar nuestros datos evitando de esta manera la redundancia o duplicidad de los datos dentro de la Base de Datos.
Relacin: Un vnculo entre tablas que permite acceder a los datos desde ms sitios que la tabla seleccionada actualmente. El vnculo es la condicin de combinacin. Para crear relaciones necesitar ndices en las tablas que desee relacionar.
Relacin Persistente: Relaciones entre tablas que duran ms que simplemente el tiempo de ejecucin. Las tablas deben estar en una base de datos para poder tener una relacin persistente. El segmento de lnea que une (relaciona) a dos tablas entre si, es lo que se conoce como Relacin Persistente Para preparar la creacin de una relacin, busque un campo comn en las dos tablas y agregue ndices. Por ejemplo, la tabla Reo.DBF y la tabla Ingreso.DBF tienen un campo codigo_reo. Para establecer una relacin entre ellas, la tabla Reo necesita un ndice principal en el campo codigo_reo y la tabla Ingreso necesita un ndice normal en su campo codigo_reo (tarea que ya completamos anteriormente). Qu me falta entonces? La tarea ms sencilla, en el Generador de Bases de Datos, seleccionamos el ndice Principal o Primario de la Tabla Primaria, dejando el botn Izquierdo del Mouse pisado, arrastramos el cursor hasta el ndice de la Tabla Secundarias, una vez que se encuentra sobre la seccin de los ndices de la tabla secundaria, el cursor cambia de forma, convirtindose en un diminuto rectngulo, lo posicionamos sobre el ndice similar y soltamos el botn del Mouse. Inmediatamente aparece una lnea (que yo llamo "Patas de Gallina") que establece la Relacin Permanente entre ambas tablas.
La lnea que une ahora a las dos tablas representa la Relacin Persistente o Permanente entre ambas, si queremos editar la relacin debemos: 1. Seleccionar la relacin que queremos editar, basta con un simple Click sobre la lnea. Est accin cambiar inmediatamente la forma de la lnea,. que tomar un color ms fuerte y un poco ms ancha.
2. A travs del Men de Bases de Datos del Men Principal del Visual FoxPro, pulsamos la opcin Editar Relacin.
o haciendo uso del Botn Derecho del Mouse sobre la misma lena, aparece un Men emergente que entre otras opciones muestra la de Editar Relacin.
Una vez completado los dos pasos anteriores, aparece en pantalla el Cuadro de Dilogo Editar Relacin:
Donde puede observarse claramente, el nombre de las dos tablas relacionadas, el campo que hace posible dicha relacin. el tipo de relacin y un Botn sumamente importante como lo es el de la Integridad Referencial al cual nos dedicaremos en lo sucesivo. Hasta los momentos hemos manipulado los Campos y los ndices de las Tablas, nos falta entonces la Propiedades de la Tablas para completar nuestro trabajo: lograr la Integridad Referencial. Tabla: Fija la regla a nivel de fila, el texto de error de validacin, y un comentario para la tabla. Este cuadro de dilogo aparece cuando se elige Propiedades de tabla en el Generador de tablas. Es necesario que haya una base de datos abierta para que aparezca el botn "Propiedades de tabla" en el Generador de tablas. Las tablas libres no pueden tener asociados comentarios, reglas o desencadenantes. Opciones de la ficha
El botn situado a la derecha de cada configuracin muestra el Generador de expresiones.
Opciones del cuadro de dilogo Regla de validacin: Especifica una regla a nivel de fila para hacer que se cumpla la validacin de datos.regla a nivel de registro Una regla de validacin, vinculada a un campo, que se activa cuando se inserta o modifica el registro, y que suele utilizarse para verificar la entrada de datos y su exactitud. Las reglas de validacin no se aplican cuando se eliminan registros. Las reglas de validacin a nivel de registro se activan despus de las reglas a nivel de campo y antes que los desencadenantes, y funcionan durante las actualizaciones almacenadas en bfer. registro. Registro: Una unidad de almacenamiento en una tabla. Todas las tablas pueden contener un gran nmero de registros, cada uno de los cuales consta de campos.
Mensaje o Texto de validacin: Especifica el mensaje de error que debe ser mostrado si una entrada no se ajusta a la regla de validacin a nivel de fila.
Desencadenates o Trigger: Cdigo de evento a nivel de registro que se ejecuta despus de una insercin, una actualizacin o una eliminacin. Es posible adjuntar distintas acciones a los distintos eventos. Los desencadenantes se ejecutan en ltimo lugar, despus de las reglas, y no se ejecutan durante las actualizaciones almacenadas en bfer. Suelen utilizarse para integridad entre tablas. A travs de los desencadenantes se logra que rigen la coherencia de datos, Referencial (RI): Las reglas Integridad especficamente las relaciones entre las claves principal y externa de tablas distintas. Visual FoxPro resuelve la integridad referencial mediante reglas a nivel de campo y a nivel de registro definidas por el usuario. El Generador de integridad referencial le ayuda a definir reglas para controlar cmo ser insertan, actualizan o eliminan registros de tablas relacionadas. ISERTAR: Especifica una regla que debe desencadenarse siempre que se inserta o se agrega un registro a la tabla. ACTUALIZAR: Especifica una regla que debe desencadenarse siempre que se actualiza un registro de la tabla. ELIMIAR: Especifica una regla que debe desencadenarse siempre que se elimina un registro de la tabla. Los tres procesos anteriores de Insercin, Eliminacin y Modificacin (con algunas excepciones) de Tablas, pueden ser en: Cascada: Actualiza todos los registros relacionados de la(s) tabla(s) secundaria(s) con el nuevo valor. No se aplica al proceso de insercin Restringir: Prohibe la actualizacin si hay registros relacionados en la(s) tabla(s) secundaria(s) Ignorar: Permite la actualizacin y deja los registros relacionados slo en la(s) tabla(s) secundaria(s). Por defecto siempre toma la regla de Ignorar.
El proceso de Actualizacin puede ser establecido en Cascada, para que de esta forma, un cambio en la Clave o Etiqueta Primaria se produzca en todas las tablas asociadas o relacionadas con esta. El proceso de Eliminacin debe ser establecido en Restringir y de esta manera no permitir eliminar registros de una tabla que tengan relacin con otros registros en tablas secundarias, un ejemplo de esto sera, no permitir eliminar un Departamento si existen trabajadores asignados a dicho departamento, o eliminar un registro de un alumnos si este est moroso con la biblioteca. El ltimo desencadenante o el proceso de Insercin debe es recomendable que este en Ignorar. Cuando tengamos las Diez (10) tablas que conforman nuestra Base de Datos, aparecern en todas las relaciones existentes dentro de las misma, estableciendo las mismas reglas siguiendo la recomendacin anterior. Reo_difuntos.DBF
Reo_fugas.DBF
Reo_condena.DBF
Reo_excarcelacion.DBF
Reo_Delito.DBF
Ubicacion.DBF
Delito.DBF
Rasgos.DBF
La Estructura de la Base de datos debe quedar as:
La Integridad Referencial para toda la Base de Datos:
En el siguiente captulo encontraras un compendio de aspectos, comandos y/o funciones tratados hasta el momento, espero que te sirvan de gua aclaratoria....