sábado, 7 de mayo de 2011

Extensiones y tipos de archivos utilizados en Visual FoxPro




Extensión
Tipo de archivo
.act
Diagrama de acción del Asistente para documentación
.app
Aplicación o documento activo generado
.cdx
Índice compuesto
.chm
Ayuda HTML compilada
.dbc
Base de datos
.dbf
Tabla
.dbg
Configuración de depurador
.dct
Memo de base de datos
.dcx
Índice de base de datos
.dll
Biblioteca de vínculos dinámicos de Windows
.err
Error de compilación
.esl
Biblioteca de compatibilidad de Visual FoxPro
.exe
Programa ejecutable
.fky
Macro
.fll
Biblioteca de vínculos dinámicos de FoxPro
.fmt
Archivo de formato
.fpt
Memo de tabla
.frt
Memo de informe
.frx
Informe
.fxp
Programa compilado
.h
Archivo de encabezado (para incluir en un programa de Visual FoxPro o C/C++)
.hlp
WinHelp
.htm
HTML
.idx
Índice, índice compacto
.lbt
Memo de etiqueta
.lbx
Label
.log
Registro de trayecto
.lst
Lista del Asistente para documentación
.mem
Variables guardadas
.mnt
Memo de menú
.mnx
Menú
.mpr
Programa de menú generado
.mpx
Programa de menú compilado
.ocx
control ActiveX
.pjt
Memo de proyecto
.pjx
Proyecto
.prg
Programa
.qpr
Programa de consulta generado
.qpx
Programa de consulta compilado
.sct
Memo de formulario
.scx
Formulario
.spr
Programa de pantalla generado (sólo en versiones anteriores de FoxPro)
.spx
Programa de pantalla compilado (sólo versiones anteriores de FoxPro)
.tbk
Copia de seguridad de memo
.txt
Texto
.vct
Memo de biblioteca de clases visuales
.vcx
Biblioteca de clases visuales
.vue
Presentación de FoxPro 2.x
.win
Archivo de ventana

LENGUAJE DE MANIPULACIÓN DE DATOS (DML)

Un lenguaje de manipulación de datos (Data Manipulation Language, o DML en inglés) es un lenguaje proporcionado por el sistema de gestión de base de datos que permite a los usuarios llevar a cabo las tareas de consulta o manipulación de los datos, organizados por el modelo de datos adecuado.
El lenguaje de manipulación de datos más popular hoy día es SQL, usado para recuperar y manipular datos en una base de datos relacional.

INSERT
Una sentencia INSERT de SQL agrega uno o más registros a una (y sólo una) tabla en una base de datos relacional.
Forma básica
 INSERT INTO ''tabla'' (''columna1'', [''columna2,... '']) VALUES (''valor1'', [''valor2,...''])
Las cantidades de columnas y valores deben ser iguales. Si una columna no se especifica, le será asignado el valor por omisión. Los valores especificados (o implícitos) por la sentencia INSERT deberán satisfacer todas las restricciones aplicables. Si ocurre un error de sintaxis o si alguna de las restricciones es violada, no se agrega la fila y se devuelve un error.

Ejemplo
 INSERT INTO agenda_telefonica (nombre, numero) VALUES ('Roberto Jeldrez', 4886850);
Cuando se especifican todos los valores de una tabla, se puede utilizar la sentencia acortada:
 INSERT INTO ''tabla'' VALUES (''valor1'', [''valor2,...''])
Ejemplo (asumiendo que 'nombre' y 'número' son las únicas columnas de la tabla 'agenda_telefonica'):
 INSERT INTO agenda_telefonica VALUES ('Roberto Jeldrez', 080473968);

Formas avanzadas

Inserciones en múltiples filas
Una característica de SQL (desde SQL-92) es el uso de constructores de filas para insertar múltiples filas a la vez, con una sola sentencia SQL:
INSERT INTO ''tabla'' (''columna1'', [''columna2,... ''])
               VALUES (''valor1a'', [''valor1b,...'']), (''value2a'', [''value2b,...'']),...
Esta característica es soportada por DB2, PostgreSQL (desde la versión 8.2), MySQL, y H2.
Ejemplo (asumiendo que 'nombre' y 'número' son las únicas columnas en la tabla 'agenda_telefonica'):
INSERT INTO agenda_telefonica VALUES ('Roberto Fernández', '4886850'), ('Alejandro Sosa', '4556550');
Que podía haber sido realizado por las sentencias
INSERT INTO agenda_telefonica VALUES ('Roberto Fernández', '4886850');
INSERT INTO agenda_telefonica VALUES ('Alejandro Sosa', '4556550');
Notar que las sentencias separadas pueden tener semántica diferente (especialmente con respecto a los triggers), y puede tener diferente rendimiento que la sentencia de inserción múltiple.
Para insertar varias filas en MS SQL puede utilizar esa construcción:
INSERT INTO phone_book
SELECT 'John Doe', '555-1212'
UNION ALL
SELECT 'Peter Doe', '555-2323';
Tenga en cuenta que no se trata de una sentencia SQL válida de acuerdo con el estándar SQL (SQL: 2003), debido a la cláusula subselect incompleta.
Para hacer lo mismo en Oracle se usa DUAL TABLE, siempre que se trate de solo una simple fila:
INSERT INTO phone_book
SELECT 'John Doe', '555-1212' FROM DUAL
UNION ALL
SELECT 'Peter Doe','555-2323' FROM DUAL
Una implementación conforme al estándar de esta lógica se muestra el siguiente ejemplo, o como se muestra arriba (no aplica en Oracle):
INSERT INTO phone_book
SELECT 'John Doe', '555-1212' FROM LATERAL ( VALUES (1) ) AS t(c)
UNION ALL
SELECT 'Peter Doe','555-2323' FROM LATERAL ( VALUES (1) ) AS t(c)

Copia de filas de otras tablas
Un INSERT también puede utilizarse para recuperar datos de otros, modificarla si es necesario e insertarla directamente en la tabla. Todo esto se hace en una sola sentencia SQL que no implica ningún procesamiento intermedio en la aplicación cliente. Un SUBSELECT se utiliza en lugar de la cláusula VALUES. El SUBSELECT puede contener JOIN, llamadas a funciones, y puede incluso consultar en la misma TABLA los datos que se inserta. Lógicamente, el SELECT se evalúa antes que la operación INSERT esté iniciada. Un ejemplo se da a continuación.
INSERT INTO phone_book2

SELECT *
FROM phone_book
WHERE name IN ('John Doe', 'Peter Doe')
Una variación es necesaria cuando algunos de los datos de la tabla fuente se está insertando en la nueva tabla, pero no todo el registro. (O cuando los esquemas de las tablas no son iguales.)
INSERT INTO phone_book2 ( [name], [phoneNumber] )

SELECT [name], [phoneNumber]
FROM phone_book
WHERE name IN ('John Doe', 'Peter Doe')
El SELECT produce una tabla (temporal), y el esquema de la tabla temporal debe coincidir con el esquema de la tabla donde los datos son insertados.

UPDATE
Una sentencia UPDATE de SQL es utilizada para modificar los valores de un conjunto de registros existentes en una tabla.
Forma básica
 UPDATE ''tabla''
SET ''columna1'' = ''valor1'' ,''columna2'' = ''valor2'',...
 WHERE ''columnaN = ''valorN''

Ejemplo
UPDATE My_table SET field1 = 'updated value' WHERE field2 = 'N';

DELETE
Una sentencia DELETE de SQL borra uno o más registros existentes en una tabla,
Forma básica
 DELETE FROM ''tabla'' WHERE ''columna1'' = ''valor1''

Ejemplo
DELETE FROM My_table WHERE field2 = 'N'

PALINDROME

Un palíndromo (del griego palin dromein, volver a ir hacia atrás) es una palabra, número o frase que se lee igual hacia adelante que hacia atrás. Si se trata de un número, se llama capicúa. Habitualmente, las frases palindrómicas se resienten en su significado cuanto más largas son.

LENGUAJE SQL

El lenguaje de consulta estructurado o SQL (por sus siglas en inglés structured query language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en éstas. Una de sus características es el manejo del álgebra y el cálculo relacional permitiendo efectuar consultas con el fin de recuperar -de una forma sencilla- información de interés de una base de datos, así como también hacer cambios sobre ella.


MESSAGEBOX...

MESSAGEBOX( ) (Función)

Muestra un cuadro de diálogo definido por el usuario.
MESSAGEBOX(eMessageText [, cTitleBarText][, nDialogBoxType ][, nTimeout])
Valores devueltos
Numeric
Parámetros
eMessageText
Especifica el texto que aparece en el cuadro de diálogo. Utilice un retorno de carro (CHR(13)) en eMessageTextpara mover una parte del mensaje a la línea siguiente del cuadro de diálogo. El alto y el ancho del cuadro de diálogo aumentan lo que sea necesario para que quepa cMessageText.
Puede utilizar cualquier función o tipo de datos válido de Visual FoxPro en vez de eMessageText. Si la función que utiliza produce un valor que no sea un carácter, Visual FoxPro utilizará automáticamente TRANSFORM para proporcionar el carácter equivalente, como en el siguiente ejemplo:
MESSAGEBOX(DATE())
nDialogBoxType
Especifica los botones y los iconos que aparecen en el cuadro de diálogo, el botón elegido inicialmente cuando se muestra y el comportamiento del mismo.
En las tablas siguientes, los valores 0 a 5 del botón del cuadro de diálogo especifican los botones que aparecen en el mismo. Los valores de icono 16, 32, 48 y 64 especifican el icono que aparece en el cuadro de diálogo. Los valores predeterminados 0, 256 y 512 especifican qué botón del cuadro de diálogo es el botón predeterminado. El botón predeterminado se selecciona cuando aparece el cuadro de diálogo.
Omitir nDialogBoxType es lo mismo que especificar un valor de 0 para nDialogBoxType.
Publicado por naren en 14:54 0 comentarios