UNIDAD II. PROGRAMACIÓN DE BASE DE DATOS
2.1. Uso de variables y funciones.
Una variable es un
espacio en memoria representado por una cadena de caracteres que almacena datos
de cualquier tipo.
Las funciones, son
un conjunto de instrucciones que generan como salida un valor único una vez
introducidos los parámetros de entrada.
Las variables
pueden ser de varios tipos: de memoria, memoria del sistema, locales,
privadas y públicas.
La asignación a
variables de memoria del sistema es realizada de forma inmediata por
Visual FoxPro y el
usuario no interviene.
Los valores del
resto de las variables sí son asignadas por el usuario.
2.1.1. Declaración de variables.
Public A, B, C
Store 0 to A, B, C
Local X, Y, Z
Store «*» to X, Y, Z
2.1.2. Asignación
de valores.
La asignación se
establece cuando defines los datos o el valor que contiene una variable.
Ejemplos de este tipo de asignación son:
Impuesto IVA =
1.16
Costo Bucal =
costo
Donde costo es el
campo perteneciente a la tabla
Tratamientos.
2.1.3. Funciones
Las sintaxis de
una función es la siguiente:
Donde argumentos(o
parámetros) son los datos, campos o variables a introducir en la función.
Financieras.
CALCULATE()
Devuelve cálculo de tipo estadísticos o financieros sobre campos, los cálculos
son los
siguientes:
AVG() Calcula la
media aritmética.
CNT() Cuenta la
cantidad de registros de una tabla.
MAX() Valor mayor
encontrado.
MIN() Valor menor
encontrado.
STD() Desvío
estándar de la media.
SUM() Suma los
datos de un campo.
VAR() varianza del
promedio.
Matemáticas.
Secante
Sec(X) = 1 / Cos(X)
Cosecante Cosec(X) = 1 / Sin(X)
Cotangente Cotan(X) = 1 / Tan(X)
Arcoseno Arcsin(X) = Atn(X / Sqr(-X * X + 1))
Cosecante Cosec(X) = 1 / Sin(X)
Cotangente Cotan(X) = 1 / Tan(X)
Arcoseno Arcsin(X) = Atn(X / Sqr(-X * X + 1))
FUNCIONES DE FECHA
DATE() Devuelve la fecha actual del sistema.
DAY() Devuelve el día del mes de una determinada fecha.
DOW() Devuelve el número de día en la semana (1 a 7).
DTOS() Convierte un tipo de dato fecha en una cadena de texto.
FTIME()Devuelve la hora de la última modificación de un archivo.
2.1.4. CONVERSIÓN DE TIPOS DE DATOS.
CONVERTIR MINUSCULAS A MAYUSCULAS: UPPER
CONVERTIR MAYUSCULAS A MINUSCULAS: LOWER
2.2. EXPRESIONES.
Una expresión o
sentencia que nos permite realizar operaciones con constantes, variables,
cadenas o campos, entre otros.
Las expresiones pueden
ser de tipo aritmético, lógico y relacional.
• ARITMÉTICAS.
Las expresiones
aritméticas son aquellas que incluyen operadores matemáticos como +, -, *, / y
() los cuales cuando se trata de cálculos en la computadora tienen un estricto
orden de procedencia.
Suma=5 + 5
Multisuma=6*7+9
Álgebra=a4-8b*8c
Paréntesis=(7+5)/((5-1)*9)
• LÓGICAS.
También existen
las expresiones lógicas, este tipo de expresiones son básicas dentro de
la programación, ya que se utilizan mucho en condicionantes o en el control de
ciclos entre otras.
Estas expresiones
arrojan valores de cierto (T) o falso (F). Las más utilizadas son AND, OR y
NOT, y como quizás recuerdes (de tus clases de matemáticas) cada una tiene su
propio
Un ejemplo de
expresión lógica es: sexo= ‘M’ and apellidos >= ‘M’
• CONCATENACIÓN.
Otra técnica es
recopilar todas las cadenas formadas al
concatenar una cadena del primer lenguaje y una cadena del segundo. La
colección de las cadenas formadas de esta manera se denominan concatenación de
dos lenguajes. Así; sí L1={x, xy} y L2={yx, yy} entonces el lenguaje L1L2 =
{xyx, xyy, xyyx, xyyy}. Observe que L1L2 no es igual a L2L1 = {yxx, yxxy, yyx,
yyxy}
• COMPARACIÓN.
Se puede utilizar
otro tipo de operador, los operadores de comparación, con objeto de comparar
valores numéricos y devolver valores booleanos (True o False). Es igual a las
operaciones relacionales. Se puede usar la instrucción If…Then…Else
RELACIONAL
Otro tipo de
expresiones que también es importante que tengas presente es la relacional,
que se utiliza para construir condiciones de comparación de variables,
constantes y campos, entre otros. Los operadores que se utilizan son >,
<, >=, <=, <> e =.
• PRIORIDAD DE
OPERACIONES.
Prioridad de
los Operadores Aritméticos
Todas las expresiones entre paréntesis se evalúan primero. Las expresiones con paréntesis anidados se evalúan de dentro a fuera, el paréntesis más interno se evalúa primero.
Dentro de una misma expresión los operadores se evalúan en el siguiente orden:
Todas las expresiones entre paréntesis se evalúan primero. Las expresiones con paréntesis anidados se evalúan de dentro a fuera, el paréntesis más interno se evalúa primero.
Dentro de una misma expresión los operadores se evalúan en el siguiente orden:
() Parentesis
•
^ Exponenciación
•
*, /, Div, mod Multiplicación, división, modulo.
•
+, - Suma y resta.
Los operadores en
una misma expresión con igual nivel de prioridad se evalúan de izquierda a
derecha.
Operadores
Relacionales
Se utilizan para establecer una relación entre dos valores. Luego compara estos valores entre si y esta comparación produce un resultado de certeza o falsedad (verdadero o falso).
Tipos de operadores Relacionales
Se utilizan para establecer una relación entre dos valores. Luego compara estos valores entre si y esta comparación produce un resultado de certeza o falsedad (verdadero o falso).
Tipos de operadores Relacionales
•
> Mayor que
•
< Menor que
•
> = Mayor o igual que
•
< = Menor o igual que
•
< > Diferente
•
= Igual
•
Operadores Lógicos
Estos operadores se utilizan para establecer relaciones entre valores lógicos. Estos valores pueden ser resultado de una expresión relacional.
Tipos de operadores Lógicos
And Y
Or O
Not Negación
Estos operadores se utilizan para establecer relaciones entre valores lógicos. Estos valores pueden ser resultado de una expresión relacional.
Tipos de operadores Lógicos
And Y
Or O
Not Negación
RESUELVE LOS SIGUIENTES
EJERCICIOS:
•
Evaluar la siguiente expresión aritmética
•
a * (b + c) + c * (d + e), para los valores:
•
a = 3, b = 2, c = 1, d = 8, e = 4
•
Evaluar la expresión aritmética
•
(a * (b + c)) – 2 * a + (4 * d – f), para los valores:
•
a = 3, b = 2, c = 1, d = 8, f = 4
•
Si A = 4, B = 5 y C = 1, evaluar las siguientes expresiones
•
a) B * A - B * B / 4 * C
•
b) (A * B) / 3 * 3
•
c) (((B + C) / 2 * A + 10) * 3 * B) - 6
REFERENCIA:
2.3. INSTRUCCIONES
O COMANDOS BÁSICOS.
Create: Crea una base de datos nueva.
Use: Abre una base de datos existente.
Quit: Sale del programa Fox cerrando la base de datos en uso.
Append: Permite agregar registros al final de la base de
datos.
Edit: Permite modificar el registro activo.
Browse: Permite ver y modificar los registros de la base de
datos.
Modify Structure: Modifica la estructura de la base de datos
activa.
Display: Muestra los registros que se especifiquen, con la
característica que al terminar la pantalla espera hasta que se oprima alguna
tecla.
List: Muestra todos los registros de una base de datos sin
esperar al finalizar la pantalla.
Index: Ordena los registros de la manera en que se
especifique en la sintaxis.
2.3.1. INSTRUCCIONES DE APERTURA Y CIERRE.
USE pone en
uso una tabla
OPEN abre
una base de datos
QUIT sale de foxpro
CLOSE cierra una tabla o
base de datos
2.3.2. COMANDOS PARA
EL CONTROL DE LA
PANTALLA.
@...CLEAR
Limpia la pantalla
desde las coordenadas indicadas hasta el final. Si se emplea la opción TO,
podrá indicar las coordenadas hasta las que desea limpiar.
Sintaxis: @<fila
sup>, <columna izq>CLEAR TO <fila inf>, <columna derecha>
Do. Ejecuta el procedimiento en la ventana de comandos o
en un formulario
Procedure nombre. Establece el inicio de un
procedimiento.
Return. Devuelve el control del programa al programa que
llama
Endproc. Instrucción que finaliza un procedimiento
2.3.3. INSTRUCCIONES DE LECTURA
Y ESCRITURA.
@...SAY/GET
Muestra
en las coordenadas especificadas el contenido de la <expC> que sigue a
SAY, carga valores a los campos o las variables de memoria que siguen a GET
(hasta ser leídos por READ instrucción STORE o ser campos de base de datos)
Sintaxis:
@<fila>,<columna>SAY<expC> GET<expC>
Display,
browse , ?
Ejemplos:
Display
record 2 (muestra el registro indicado (2) en la consola de foxpro)
Browse
Browse
fields nombre, direccion, telefono (muestra los campos mencionados en la
consola)
? Nombre
Examinar
la información:
BROWSE
Ejemplos: USE empleado
BROWSE
0
BROWSE
FIELDS clave, nombre, sueldo (aquí se omitió el depto)
0
BROWSE FOR depto = “0003”
(solo ese depto)
BROWSE
FIELDS NOM, EDAD.DIR
Listar registros en Pantalla:
LIST [Campos] (opcional)
Ejemplos: LIST (Lista todos los campos en pantalla)
LIST clave, nombre, sueldo
(Lista solo esos Campos)
LIST FOR
depto = “0012” (Lista solo de ese depto)
LIST OFF (Listar sin el numero
de registro)
2.4. CONTROL
DEL FLUJO DEL PROGRAMA.
2.4.1. INSTRUCCIONES DE SELECCIÓN.
IF/ENDIF
Permite el uso de
decisiones. Bifurca un programa entre condición y su opuesta. Cada IF que sea
abierto hay que cerrarlo con ENDIF. Este comando se usa en forma parecida al DO
CASE / ENDCASE
2.4.2. COMANDOS
DE BUCLES O CICLOS.
2.4.3. COMANDOS DE CONTROL
DE ITERACIONES
DO CASE/ENDCASE
Bifurca la
ejecución de un programa según las diferentes condiciones. OTHERWISE representa
todos los casos que no cumplen la condición.
DO WHILE/ENDDO
Realiza una
estructura de bucle (ciclo o anillo repetitivo) mientras se cumpla la condición
especificada. DO WHILE comienza y continua el bucle si se cumple la condición,
ENDDO devuelve el control al principio del bucle.
FOR TO DO
Realiza un ciclo o
anillo repetitivo mientras no se llegue al número especificado en la sintaxis.
2.4.4. COMANDOS
DE SELECCIÓN DE CASOS.
Instrucción
case para los casos en que las alternativas de solución a una interrogante
pueden ser “n” y se necesitan más de un if
EJEMPLO:
La función
de la instrucción if clave_art=1 then
delete endif, elimina de
forma lógica todos los registros que cumplan con la condición
scan
do
case
case precio>=130.00
browse
if clave_art=1 then
delete
endif
endcase
endscan
Referencia:
http://www.doschivos.com/display.asp?ID=416&f=13547
No hay comentarios:
Publicar un comentario