Académique Documents
Professionnel Documents
Culture Documents
VISUAL FOXPRO
TIPOS DE DATOS
Como se ha visto los datos forman parte de las tablas (las columnas), sin embargo para poder definir
cada uno de ellos dentro de estas, se debe de conocer los valores que estos van a almacenar lo que
se denomina el tipo de dato, por ejemplo, la edad de un alumno esta formada por nmeros, por lo
tanto este dato seria de tipo Numrico, para el nombre de un alumno se almacenaran solo caracteres
alfabticos, por lo que este campo seria de tipo Carcter, etc.
A continuacin se presenta una tabla la cual presenta los diferentes tipos de datos que se pueden
almacenar en una tabla.
Tipo de datos
Descripcin
Ejemplo
Carcter
Texto alfanumrico
La direccin o nombre de un
cliente
Moneda
Unidades monetarias
Precio de compra
Numrico
Flotante
Fecha
Da, mes y ao
DateTime
(FechaHora)
Doble
Entero
Lgico
Verdadero o Falso
Memo
Texto alfanumrico
indeterminada
CORPORATIVO CETEC
Datos
procedentes
de
experimentos que requieren un
elevado grado de precisin
VISUAL FOXPRO
General
OLE
Hoja de clculo
Imgenes, etc.
de
Excel,
Caracter (binario)
Memo (binario)
PRCTICA
En esta prctica crearemos una Base de datos la cual almacenara dos tablas.
1.
2.
3.
VISUAL FOXPRO
1) De un
clic
en
nuevo
2) De un clic en el
botn Base de datos
para activarlo
3) De un clic en el
botn Nuevo archivo
4) Grabe la
base de datos
con el nombre
de EJEMPLO
CORPORATIVO CETEC
5) De un clic en
Guardar
Observe que se
despleg la ventana
diseador de bases
de datos junto con
su
barra
de
herramientas
VISUAL FOXPRO
Si por alguna razn la barra de herramientas Diseador de bases da datos no se muestra o la cierra
por descuido, puede abrirla desde el men Ver seleccionando la opcin Barra de herramientas y
activando la casilla Diseador de bases de datos.
4.
1) Vuelva
a
seleccionar
la
opcin
Nuevo
del
men
Archivo
CORPORATIVO CETEC
2) De un clic en la
opcin Tabla como
archivo a crear
4)
Escriba
ALUMNOS
como nombre
de la tabla
VISUAL FOXPRO
3) De un clic en el
botn Nuevo
5) De un clic en
Guardar
A partir de este
momento y en
esta ventana se
comienza
a
insertar
los
campos
que
compondrn la
tabla
VISUAL FOXPRO
Tipo
Numrico
Carcter
Numrico
Carcter
Carcter
Tamao (ancho)
5
40
2
1
11
1) Escriba el
nombre
del
primer campo
3) Escriba o
seleccione
el
nmero 5 como
tamao
del
campo
2)
Seleccione
Numrico como
tipo de campo
5) De un clic o
utilice la tecla
Tabulador para
desplazarse
y
especificar
el
Tipo
y
el
Tamao
del
campo
4) De un clic en
el
segundo
rengln
y
escriba
el
segundo campo
No presione la
tecla Enter ya
que se cerrara la
ventana
Puede
agregar
o
eliminar un
campo
utilizando
los botones
de Insertar o
Eliminar
CORPORATIVO CETEC
10
VISUAL FOXPRO
7) Al terminar de
agregar todos los
campos, de un clic
en el botn Aceptar
o presione la tecla
Enter
8) En esta ventana
seleccione NO ya que
despus se agregaran
lo registros en la tabla
5.
CORPORATIVO CETEC
Tipo
Numrico
Numrico
Numrico
Numrico
Tamao (ancho)
5
2
2
2
11
VISUAL FOXPRO
Existe otra forma de agregar las tablas sin seleccionar la opcin Nuevo del men Archivo; esto es,
dando un clic con el botn derecho sobre la ventana Diseador de bases de datos y seleccionando la
opcin Nueva tabla.
1) De un clic con
el
botn
de
derecho
del
mouse sobre un
rea vaca de la
ventana
Diseador de
bases de datos
2) De un clic en la
opcin
Nueva
tabla
3) De un clic en el botn
nueva tabla
4)
Escriba
CALIFICACIONES
como nombre de
la tabla
5) De un clic en el
botn Guardar
Recuerde: Existen dos formas de agregar una tabla en la base de datos, desde el men Archivo-Nuevo o dando un
clic con el botn derecho del mouse sobre la ventana Diseador de bases de datos.
CORPORATIVO CETEC
12
6) Comience a
agregar
los
campos para la
tabla
CALIFICACIONES
Vea la tabla de la
pgina 11 donde
se muestran los
campo que sern
insertados
u
observe
la
siguiente figura
VISUAL FOXPRO
Recuerde que
no
se
debe
oprimir la tecla
Enter, de un clic
o utilice la tecla
Tabulador para
especificar
el
Tipo y el tamao
del campo
7) Al terminar de
insertar
los
campos de un clic
en
el
botn
Aceptar
8) De un clic en el
botn NO para no
agregar registros
CORPORATIVO CETEC
13
Puede
mover
las ventanas de
la
tabla
arrastrndola
del
ttulo
o
agrandarla
arrastrando uno
de sus bordes
VISUAL FOXPRO
9) Cierre la
ventana
Diseador
de bases de
datos
10) En la ventana de
comando escriba la
orden
CLOSE
DATABASE y oprima
la tecla Enter para
cerrar la base de
datos
Observe que el
nombre de la base
de datos ya no
aparece en la lista
11)
Por
ltimo
escriba el comando
QUIT y oprima la
tecla Enter para salir
del programa Visual
Foxpro
CORPORATIVO CETEC
14
VISUAL FOXPRO
Puede tambin crear la base de datos directamente desde la Ventana de comandos con la orden
CREATE DATABASE.
1) De un clic en
el botn Abrir de
la
barra
de
herramientas
Estandar
2) Busque la carpeta
de trabajo donde se
almacena la base de
datos EJEMPLO
3) Abra la lista
plegable
y
seleccione Base de
datos como tipo de
archivo a abrir
CORPORATIVO CETEC
15
VISUAL FOXPRO
4) Seleccione la
base
de
datos
EJEMPLO
5) De un clic en el
botn
Aceptar
para abrir la base
de datos
Observe
la
ventana
Diseador
de
bases de datos
6)
Cierre
la
ventana diseador
de bases de datos
7)
Escriba
el
comando MODIFY
DATABASE
y
oprima Enter para
volver
abrir
la
ventana Diseador
de base de datos
CORPORATIVO CETEC
16
VISUAL FOXPRO
8) Observe que
aparece
nuevamente la
ventana
Diseador
de
bases de datos
Imaginemos que en una de las tablas hizo falta un campo y que es necesario agregarlo; supongamos
que el campo es PARCIAL4 y hay que anexarlo a la tabla calificaciones.
9) De un clic con el
botn derecho del
mouse dentro de la
tabla Calificaciones y
seleccione Modificar
del men contextual
CORPORATIVO CETEC
17
10) De un clic y
escriba el nombre
de campo que se va
a agregar as como
el tipo y el tamao
VISUAL FOXPRO
11) De un clic en
el botn Aceptar
para guardar los
cambios
Observe que ya
se
anexo
el
campo PARCIAL4
Si no ve todos los
campos
en
la
ventana agrndela
arrastrando el borde
inferior
con
el
mouse
CORPORATIVO CETEC
18
VISUAL FOXPRO
Recuerde: El comando utilizado para cerrar una base de datos es CLOSE DATABASE.
14) De un clic en
el botn derecho
del campo para
seleccionarlo
15) De un clic en el
botn Eliminar
16) De un clic en el
botn Aceptar
CORPORATIVO CETEC
19
VISUAL FOXPRO
17) De un clic en el
botn
Si
para
aceptar los cambios
Recuerde: La opcin del men contextual que permite realizar cambios a los campos de una tabla es MODIFICAR.
Inicie Visual Foxpro y cree una nueva tabla (si aun se encuentra dentro del programa
Visual Foxpro, teclee en la ventana de comandos CLOSE DATABASE para cerrar su
base de datos o si prefiere salga de Visual Foxpro y vuelva a entrar).
CORPORATIVO CETEC
20
1) De un clic
en el botn
Nuevo de la
barra
de
herramientas
Estndar
VISUAL FOXPRO
3) De un clic
en el botn
Nuevo
2) De un clic
en el botn de
opcin Tabla
para activarlo
4) Busque
carpeta
trabajo
5) Escriba el
nombre
de
PROFESORES
como
nombre
de la tabla
su
de
6) De un clic en
Guardar
Observe
que
la
ventana para editar
los
campos
se
muestra diferente ya
que no es una tabla
que pertenece a una
base de datos
CORPORATIVO CETEC
21
VISUAL FOXPRO
Tipo
Numrico
Carcter
Carcter
Tamao (ancho)
5
40
15
7) Al terminar
de agregar los
campos de un
clic en Aceptar
8) De un clic en el
botn NO para no
introducir datos
Observe que no se
encuentra ninguna base
de datos abierta por lo
tanto
la
tabla
PROFESORES
no
pertenece a ninguna
base de datos, por lo
tanto se considera como
una tabla independiente
o tabla Libre
Sin embargo si quisiramos que la tabla perteneciera a la base de datos de EJEMPLO y que no fuera
ms una tabla libre sino que formara parte de la base de datos; a continuacin se muestra la forma de
cmo agregar una tabla libre a una base de datos.
CORPORATIVO CETEC
22
9) De un clic en
el botn Abrir de
la
barra
de
herramientas
Estandar
VISUAL FOXPRO
11) Seleccione la
base de datos
EJEMPLO
12) De un clic en
el botn Aceptar
10) Seleccione
como tipo de
archivo Base de
datos
Recuerde: Una tabla que no se encuentra dentro de una base de datos se le conoce como Tabla Libre.
14) Seleccione
Agregar tabla
del
men
contextual
CORPORATIVO CETEC
23
15) Seleccione la
tabla
PROFESORES
que es la que se
va a agregar
VISUAL FOXPRO
16) De un clic en
el botn Aceptar
Observe que se
agrego
la
tabla
PROFESORES en
la base de datos
Recuerde: La opcin del men contextual que anexa una tabla en la base de datos es AGREGAR TABLA.
CORPORATIVO CETEC
Seleccione
eliminar
para
borrar la tabla
de la base de
datos
24
VISUAL FOXPRO
Al seleccionar eliminar se
despliega una ventana
preguntando si deseamos
quitar la tabla de la base
de datos o eliminarla del
disco
Si solo desea quitar la tabla de la base de datos pero no borrarla del disco seleccione Quitar, si desea
quitarla de la base de datos y adems borrar la tabla del disco permanentemente seleccione Eliminar.
Todava no quite su tabla de la base de datos (si realizo los pasos de eliminacin de un clic el botn
Cancelar).
18)
Seleccione
Modificar
del
men contextual
19)
Observe
las
nuevas opciones del
Diseador de tablas y
despus de un clic en
el botn Cancelar
Estas
opciones
solo se muestran
cuando la tabla
pertenece a una
base de datos
Principal
Candidato
Normal
nico
CORPORATIVO CETEC
25
VISUAL FOXPRO
ndice Principal: Es un ndice que nunca permite valores duplicados en los campos o la expresin
especificados. Los ndices principales se suelen utilizar dentro de la tabla principal o referenciada
para establecer una integridad referencial en una relacin persistente. Slo se puede crear un ndice
principal para una tabla. Visual FoxPro devolver un error si especifica un ndice principal sobre
cualquier campo que ya contenga datos duplicados.
ndice Candidato: Es un ndice que se puede convertir en la clave principal, ya que no contiene
valores nulos ni duplicados.
ndice Normal: Es un ndice que no es nico, principal o candidato. Puede usar un ndice normal para
ordenar y buscar registros, pero no para exigir la unicidad de los datos en dichos registros. Tambin se
usa como el extremo varios de una relacin persistente uno a varios.
ndice nico: Es un ndice en el que dos registros no pueden tener el mismo valor de ndice. Es un
requisito para una clave principal.
PRCTICA
En la base de datos EJEMPLOS asignaremos un ndice en la tabla ALUMNOS y en la tabla
CALIFICACIONES.
1. Entre al programa de Visual FoxPro y abra la base de datos de EJEMPLO.
Si aun tiene la
tabla
de
PROFESORES
qutela de la
base de datos
1) De un clic con
el botn derecho
sobre la tabla de
ALUMNOS
CORPORATIVO CETEC
2)
Seleccione
Modificar
del
men contextual
26
3) De un clic
en el campo
Credencial
para
seleccionarlo
5) De un clic en el
campo Credencial
VISUAL FOXPRO
4) De un clic en
ndice y de la lista
seleccione
Ascendente
Como el campo CREDENCIAL se ha definido como ndice ascendente, la flecha seala hacia arriba si
se hubiera seleccionado descendente la flecha sealara hacia abajo.
Sin embargo aun no se ha definido que tipo de ndice; para esto realice lo siguiente.
6) De un clic en la
ficha ndices
7)
Seleccione
Principal
como
tipo de ndice
CORPORATIVO CETEC
27
VISUAL FOXPRO
8) De un clic en el
botn Aceptar
9) De un clic en el
botn Si para guardar
los cambios
Observe
que
aparece el campo
credencial como
ndice de la tabla
alumnos (si no lo
ve agrande su
ventana)
Sin embargo como se podra combinar la informacin de las dos tablas?, es decir, si quisiramos
presentar en la pantalla informacin de la tabla ALUMNOS y la tabla CALIFICIONES, como por
ejemplo el Nombre del alumno y sus tres Calificaciones parciales, ya que el nombre del alumno se
encuentra en la tabla ALUMNOS y las calificaciones parciales en la tabla CALIFICACIONES.
Combinar la informacin entre dos tablas se lleva acabo mediante una Relacin entre dos campos,
estos campos deben ser nicos y del mismo tipo.
CORPORATIVO CETEC
28
VISUAL FOXPRO
De un clic en el
campo credencial
para seleccionarlo
11) De un clic en el
primer campo y en la
opcin ndice seleccione
Ascendente
13) De
Aceptar
un
clic
en
CORPORATIVO CETEC
29
VISUAL FOXPRO
Observe
que
se
agrego
el
campo
Credencial
como
ndice
Observe que hay una diferencia entre los dos ndices de las tablas, en el ndice de la tabla ALUMNOS
se muestra una llave ya que el ndice es de tipo Principal, mientras que el ndice de la tabla
CALIFICACIONES no se muestra ninguna llave ya que fue definido como tipo Normal.
La llave seala que en la tabla ALUMNOS no se podrn repetir registros con el mismo ndice mientras
que en el ndice que no aparece la llave indica que si pueden repetir varios registros con el mismo
ndice si combinramos los dos ndices estaramos generando una relacin de uno a varios.
Enseguida haremos la relacin entre las dos tablas, esta relacin ser de Uno a Varios ya que en una
tabla (ALUMNOS) habr registros con un ndice nico es decir que no habr otro registro con el mismo
ndice, mientras que en la otra tabla (CALIFICACIONES) habr ms de un registro que pueden
contener el mismo ndice es decir registros que pueden repetirse.
Arrastre con el
mouse el ndice
Credencial de la
tabla ALUMNOS
sobre el ndice
Credencial de la
tabla
CALIFICACIONES
CORPORATIVO CETEC
30
VISUAL FOXPRO
Adems de observar la lnea de unin entre las tablas para ver el tipo de relacin que se genero, otra
forma de ver el tipo de relacin es dar clic con el botn derecho sobre la lnea de unin y seleccionar la
opcin Modificar relacin del men contextual.
1) De un clic con el
botn derecho del
mouse sobre la lnea
de unin y seleccione
Modificar relacin del
men contextual
CORPORATIVO CETEC
31
VISUAL FOXPRO
Observe el campo
ndice de la tabla
CALIFICACIONES
Observe el siguiente ejemplo de un sistema de una Biblioteca donde se explica con ms detalle las
relaciones entre dos tablas.
Supongamos que tenemos dos tablas, en la primera se almacenan las Claves clasificadas de los libros
y en la segunda tabla se almacenan que Libros existen para los lectores.
Tabla de Clasificacin
Clave
Clasificacin
del libro
01
HISTORIA
02
03
FSICA
MATEMATICAS
Autor
Amalia Guerrero
Roset del Rio
Ximena Alvarado
Brenda Bazian
Karen Manachben
Napolen Bonilla
Scrates Ibarreola
Entre estas dos tablas debe de existir una relacin, para que, cuando el lector busque un libro
determinado lo busque primero en la tabla de clasificacin para ver si se maneja ese tipo de libro y si lo
encuentra que vaya a la segunda tabla y despliegue aquellos libros existentes; observe como se vera
el programa en ejecucin.
CORPORATIVO CETEC
Si el tipo de libro es
localizado buscara
los libros en la tabla
Libros
y
los
desplegara
en
pantalla
32
VISUAL FOXPRO
En consecuencia entre las dos tablas manejaran una relacin de Uno a Varios ya que la primer tabla
(Clasificacin) solo contendr un ndice nico o principal, mientras que la segunda (Libros) podr
contener claves repetidas.
Observe como se maneja internamente la relacin:
Tabla Clasificacin
Clave
Clasificacin
del libro
01
HISTORIA
02
FSICA
03
MATEMTICAS
Tabla Libros
Clave
Ttulo del libro
Autor
del libro
01
Historia
moderna Amalia Guerrero
contempornea
01
02
Fsica cuantica
Ximena Alvarado
02
Fsica aplicada
Brenda Bazian
03
Matemticas 1
Karen Manachben
03
Matemticas 2
Napolen Bonilla
03
Matemticas 3
Scrates Ibarreola
Observe que en la primer tabla (Clasificacin) la clave del libro (la cual seria el ndice) solo se
encuentra una sola vez y no se repite, mientras que en la segunda tabla (Libros) la clave del libro si se
repite; por lo tanto la relacin entre estas dos tablas seria de Uno a Varios.
Nota:
Para que se genere una relacin de Uno a Varios la primer tabla deber contener un ndice de tipo
Principal o nico mientras que la segunda tabla deber contener un ndice de tipo Normal.
Tipo
Numrico
Carcter
Carcter
Tamao (ancho)
4
20
indice
Tipo (indice)
ascendente Principal
Tamao (ancho)
indice
Tipo (indice)
ascendente Normal
4
60
50
33
VISUAL FOXPRO
Esta es la forma de cmo debe de verse al final de la prctica la base de datos BIBLIOTECA.
Para crear una relacin Uno a Uno los ndices deben ser:
a) Principal y Principal
b) Principal y Candidato
c) Candidato y Candidato
Para crear una relacin de Uno a Varios los ndices deben de ser:
a) Principal y Normal
b) Principal y nico
c) Candidato y Normal
Recuerde: Los tipos de ndice que puede asignar son Principal, Candidato, Normal y nico.
Recuerde: Una Relacin es la unin o vinculo entre tablas por medio de un campo, lo cual nos permite combinar la
informacin entre ambas tablas.
CORPORATIVO CETEC
34
VISUAL FOXPRO
Cuestionario
Preguntas:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Respuestas:
CORPORATIVO CETEC
35