lunes, 4 de mayo de 2009

domingo, 3 de mayo de 2009

Primera Tarea

1.)
Un servidor web es un programa que implementa el protocolo HTTP (HyperText Transfer Protocol). Este protocolo pertenece a la capa de aplicación del modelo OSI y está diseñado para transferir lo que llamamos hipertextos, páginas web o páginas HTML (HyperText Markup Language): textos complejos con enlaces, figuras, formularios, botones y objetos incrustados como animaciones o reproductores de música.
Es un programa que se ejecuta continuamente en un ordenador (también se emplea el término para referirse al ordenador que lo ejecuta), manteniéndose a la espera de peticiones por parte de un cliente (un navegador web) y que responde a estas peticiones adecuadamente, mediante una página web que se exhibirá en el navegador o mostrando el respectivo mensaje si se detectó algún error.
Instalar un servidor web en nuestro PC nos permitirá, entre otras cosas, poder montar nuestra propia página web sin necesidad de contratar hosting, probar nuestros desarrollos vía local, acceder a los archivos de nuestro equipo desde un PC remoto (aunque para esto existen otras opciones, como utilizar un servidor FTP) o utilizar alguno de los programas basados en web tan interesantes que están viendo la luz últimamente. El problema de usar nuestro ordenador como servidor web es que conviene tenerlo encendido permanentemente (para que esté accesible de forma continua como la mayoría de los sitios webs), con el consiguiente coste debido al consumo de electricidad (conviene tener en cuenta que hay alojamientos web gratuitos, incluso sin publicidad y con interesantes funciones).

2.)
Para poder montar un servidor WEB se requiere de un software especializado en FTP.
Tales como: PrivateFTP,NICO FTP , FTP Commander, Tango FTP, CuteFTP, FreeFTP...(y muchos mas).

3.)
Internet ofrece muchas opciones de comunicación como: Correo, Chat, FTP, Radio, Television, Juegos, Telefonia Internacional...

4.)
Los protocolos son reglas de comunicación que permiten el flujo de información entre computadoras distintas que manejan lenguajes distintos, por ejemplo, dos computadores conectados en la misma red pero con protocolos diferentes no podrían comunicarse jamás, para ello, es necesario que ambas "hablen" el mismo idioma, por tal sentido, el protocolo TCP/IP fue creado para las comunicaciones en Internet, para que cualquier computador se conecte a Internet, es necesario que tenga instalado este protocolo de comunicación
Pueden estar implementados bien en hardware (tarjetas de red), software (drivers), o una combinación de ambos.

5.)
TCP/IP : Protocolo de Control de Transmisión (TCP) y Protocolo de Internet (IP).

HTTP :El protocolo de transferencia de hipertexto (HTTP, HyperText Transfer Protocol) es el protocolo usado en cada transacción de la Web (WWW).

HTTPS : Hypertext Transfer Protocol Secure (Protocolo seguro de transferencia de hipertexto), más conocido por sus siglas HTTPS, es un protocolo de red basado en el protocolo HTTP, destinado a la transferencia segura de datos de hipertexto, es decir, es la versión segura de HTTP.

FTP : FTP (File Transfer Protocol - Protocolo de Transferencia de Archivos) en informática, es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP, basado en la arquitectura cliente-servidor. Desde un equipo cliente se puede conectar a un servidor para descargar archivos desde él o para enviarle archivos, independientemente del sistema operativo utilizado en cada equipo.

SMTP : Simple Mail Transfer Protocol (SMTP) Protocolo Simple de Transferencia de Correo, es un protocolo de la capa de aplicación. Protocolo de red basado en texto utilizado para el intercambio de mensajes de correo electrónico entre computadoras u otros dispositivos (PDA's, teléfonos móviles, etc.).

POP3 : En informática se utiliza el Post Office Protocol (POP3) en clientes locales de correo para obtener los mensajes de correo electrónico almacenados en un servidor remoto. La mayoría de los suscriptores de los proveedores de Internet acceden a sus correos a través de POP3.

6.)
Para la publicacion de paguinas WEB hay que tener, la paguina diseñada en formato Html y un servidor donde poder puclicarla.

7.)
Los buscadores en Internet, son programas dentro de un sitio o página web, los cuales, al ingresar palabras claves, operan dentro de la base de datos del mismo buscador y recopilan todas las páginas posibles, que contengan información relacionada con la que se busca.

8.)
Las paguinas Web pueden generar ingresos de diversas formas.
1.- Publicidad
2.- Subcripcion pago
3.- Donaciones
4.- Ventas

9.)
Un dominio de Internet es un nombre base que agrupa a un conjunto de equipos o dispositivos y que permite proporcionar nombres de equipo más fácilmente recordables en lugar de una dirección IP numérica. Permiten a cualquier servicio (de red) moverse a otro lugar diferente en la topología de Internet, que tendrá una dirección IP diferente. Técnicamente, es un recurso nemotécnico que se asocia a nodos de la red Internet con el objeto de facilitar su identificación, constituido por expresiones alfanuméricas concatenadas en varios niveles organizados de forma jerárquica.

10.)
Dominios genéricos
Pueden ser registrados por todo tipo de personas físicas y jurídicas de cualquier parte del mundo sin requerimientos especiales. Este tipo de dominios son económicos y de registro muy rápido. En Guidom.com recomendamos este tipo de registro de dominios, son los que tienen más uso en la red

- Dominios .com: Son los más acertados para empresas u organizaciones con ánimo de lucro. La red está llena de .com, por lo que registrando un dominio
este tipo, su organización adquirirá un aspecto de globalidad.
- Dominios .eu: Dominios relativos a Europa. Son asignados por EURID.
- Dominios .org: Para todo tipo de organizaciones sin ánimo de lucro.
- Dominios .net: Usados mayoritariamente por empresas de Internet y Telecomunicaciones.
- Dominios .edu: Usados para fines educativos
- Dominios .mil: Exclusivamente para todo tipo de organizaciones militares.
Dominios .gov: Para los gobiernos.

Dominios estatales
- Dominios .es:Relativos al territorio español. Son asignados por ESNIC. Recientemente liberalizados.
- Dominio .au: Australia
- Dominio .fr: Francia
- Dominio .de: Alemania
- Dominio .uk: Reino Unido.

Otros dominios
En esta categoría incluimos los nuevos dominios que se han incorporado recientemente a Internet. También pueden ser registrados por todo tipo de personas físicas y jurídicas de cualquier parte del mundo sin requerimientos especiales:

Dominios genéricos Multilingües: Son dominios .com, .org y .net que llevan eñes, acentos, u otros caracteres especiales.
- Dominios .tv: Usados en empresas de vídeo, cine y televisión principalmente.
- Dominios .info: Destinados principalmente para empresas de información, periódicos, revistas, etc.
- Dominios .biz: Proviene de la pronunciación del inglés "business", por lo que están dedicados a actividades comerciales y de negocios. Es lo mismo que el .
com, pero para la zona de Europa.
- Dominios .cc: Esta extensión tiene un especial interés para aquellos que pretenden conseguir un dominio global y no tienen posibilidad de conseguir el .com
que desean.
- Dominios .ws: Las siglas .ws se identifican con Web Site, por lo que se trata de una magnífica opción para todo tipo de sitios web. Además, debido a su
novedad, es mucho más probable conseguir el dominio deseado.
- Dominios .name: Proviene del inglés “name” que significa “nombre”, por lo que se trata de una opción totalmente nueva para registrar nuestro nombre propio o apodo.
- Dominios .pro: Para uso especifico reservado a profesionales de determinadas categorías, agrupados en subdominios. Ejemplo: .med.pro (médicos).
Deberán acreditar su pertenencia al colegio u organización profesional correspondiente.
- Dominios .aero: De uso restringido para la industria de los servicios aéreos: compañías aéreas, aeronáuticas, aeropuertos y servicios aéreos.
- Dominios .coop: Reservado a las cooperativas y hace falta demostrar la cualidad de cooperativa a través de las organizaciones locales correspondientes.
- Dominios .museum: Dominio de uso restringido para los museos. Permite en un segundo nivel el nombre del museo que se trate. (prado.museum,
picasso.museum)

martes, 2 de septiembre de 2008

SQL

1. HISTORIA

La historia de SQL empieza en 1974 con la definición, por parte de Donald Chamberlin y de otras personas que trabajaban en los laboratorios de investigación de IBM, de un lenguaje para la especificación de las características de las bases de datos que adoptaban el modelo relacional. Este lenguaje se llamaba SEQUEL (Structured English Query Language) y se implementó en un prototipo llamado SEQUEL-XRM entre 1974 y 1975. Las experimentaciones con ese prototipo condujeron, entre 1976 y 1977, a una revisión del lenguaje (SEQUEL/2), que a partir de ese momento cambió de nombre por motivos legales, convirtiéndose en SQL. El prototipo (System R), basado en este lenguaje, se adoptó y utilizó internamente en IBM y lo adoptaron algunos de sus clientes elegidos. Gracias al éxito de este sistema, que no estaba todavía comercializado, también otras compañías empezaron a desarrollar sus productos relacionales basados en SQL. A partir de 1981, IBM comenzó a entregar sus productos relacionales y en 1983 empezó a vender DB2. En el curso de los años ochenta, numerosas compañías (por ejemplo Oracle y Sybase) comercializaron productos basados en SQL, que se convierte en el estándar industrial de hecho por lo que respecta a las bases de datos relacionales.

En 1986, el ANSI adoptó SQL como estándar para los lenguajes relacionales y en 1987 se transfomó en estándar ISO. Esta versión del estándar va con el nombre de SQL/86. En los años siguientes, éste ha sufrido diversas revisiones que han conducido primero a la versión SQL/89 y, posteriormente, a la actual SQL/92.
El hecho de tener un estándar definido por un lenguaje para bases de datos relacionales abre potencialmente el camino a la intercomunicabilidad entre todos los productos que se basan en él. Desde el punto de vista práctico, por desgracia las cosas fueron de otro modo. Efectivamente, en general cada productor adopta e implementa en la propia base de datos sólo el corazón del lenguaje SQL , extendiéndolo de manera individual según la propia visión que cada cual tenga del mundo de las bases de datos.

Actualmente, está en marcha un proceso de revisión del lenguaje por parte de los comités ANSI e ISO, que debería terminar en la definición de lo que en este momento se conoce como SQL3. Las características principales de esta nueva encarnación de SQL deberían ser su transformación en un lenguaje stand-alone y la introducción de nuevos tipos de datos más complejos que permitan, por ejemplo, el tratamiento de datos multimediales.

Año

Nombre

Alias

Comentarios

1986

SQL-86

SQL-87

Primera publicación hecha por ANSI. Confirmada por ISO en 1987.

1989

SQL-89


Revisión menor.

1992

SQL-92

SQL2

Revisión mayor.

1999

SQL:1999

SQL2000

Se agregaron expresiones regulares, consultas recursivas (para relaciones jerárquicas), triggers y algunas características orientadas a objetos.

2003

SQL:2003


Introduce algunas características de XML, cambios en las funciones, estandarización del objeto sequence y de las columnas autonumericas.

2006

SQL:2006


ISO/IEC 9075-14:2006 Define las maneras en las cuales el SQL se puede utilizar conjuntamente con XML. Define maneras importar y guardar datos XML en una base de datos SQL, manipulándolos dentro de la base de datos y publicando el XML y los datos SQL convencionales en forma XML. Además, proporciona facilidades que permiten a las aplicaciones integrar dentro de su código SQL el uso de XQuery, lenguaje de consulta XML publicado por el W3C (World Wide Web Consortium) para acceso concurrente a datos ordinarios SQL y documentos XML.

2. ESTRUCTURA BÁSICA

La estructura básica de una expresión para consulta SQL consta de tres cláusulas:

• SELECT

• FROM

• WHERE

La cláusula SELECT se usa para listar los atributos que se desean en el resultado de una consulta.

La cláusula FROM lista las relaciones que se van a examinar en la evaluación de la expresión

La cláusula WHERE costa de un predicado que implica atributos de las relaciones que aparecen en la cláusula FROM.

Una consulta básica en SQL tiene la forma:

SELECT A1,A2,...,An

FROM r1,r2,...,rn

WHERE P

Donde Ai = atributo ( Campo de la tabla )

ri = relación ( Tabla )

P = predicado ( condición )

Ejemplo 2.1 : Seleccionar todos los nombres de las personas que tengan el apellido MARQUESI de la tabla persona

SELECT nombre

FROM persona

WHERE apellido = " MARQUESI"

Answer

Nombre

1

MARTIN

2

PABLO

El resultado de una consulta es por supuesto otra relación. Si se omite la cláusula WHERE, el predicado P es verdadero. La lista A1, A2,..., An puede sustituirse por un asterisco (*) para seleccionar todos los atributos de todas las relaciones que aparecen en la cláusula FROM, aunque no es conveniente elegir esta ultima opción salvo que sea necesario pues desperdiciamos mucho tiempo en obtenerlo

Alias

Es posible renombrar los atributos y las relaciones, a veces por conveniencia y otras veces por ser necesario, para esto usamos la clausula AS como en el siguiente ejemplo.

Ejemplo 2.2

SELECT P.nombre AS [Primer Nombre]

FROM persona P

WHERE apellido = "MARQUESI"

Answer

Primer Nombre

1

MARTIN

2

PABLO

En este ejemplo cabe destacar un par de cosas. Cuando nos referimos a un atributo como es el caso de nombre, podemos referirnos a este usando la relación ( o el alias en este ejemplo ) a la que pertenece el atributo seguido de un punto seguido del atributo , a veces esta notación será necesaria para eliminar ambigüedades. Los corchetes los usamos cuando usamos espacios en blancos o el caratér (–) en el nombre de atributo o alias.

Usar alias en los atributos nos permite cambiar el nombre de los atributos de la respuesta a la consulta.

Cuando asociamos un alias con una relación decimos que creamos una variable de tupla. Estas variables de tuplas se definen en la cláusula FROM después del nombre de la relación.

En las consultas que contienen subconsultas, se aplica una regla de ámbito a las variables de tupla. En una subconsulta esta permitido usar solo variables de tupla definidas en la misma subconsulta o en cualquier consulta que tenga la subconsulta.

3. ORDENES SQL

Seleccionar los datos a cargar de una tabla

Esta es la forma más sencilla y habitual de usar las órdenes SQL.

Normalmente usaremos este tipo de instrucciones para cargar los datos en un DataTable (si trabajamos con ADO.NET o en un Recordset si trabajamos con ADO o DAO).

Por ejemplo:

SELECT * FROM Clientes WHERE Provincia = 'Madrid'

Este código SQL selecciona los registros de la tabla Clientes que residan en Madrid.

Los campos que devolvería serían todos, ya que hemos indicado * después de SELECT.

Si sólo queremos que devuelva los datos contenidos en los campos Nombre, Apellidos y NIF haríamos esto otro:

SELECT Nombre, Apellidos, NIF FROM Clientes WHERE Provincia = 'Madrid'

TIP:

Por rendimiento, es recomendable devolver sólo los campos que realmente necesitamos en lugar de devolver todos los campos.

Clasificar los datos seleccionados (ORDER BY)

También podemos indicar que esos datos se devuelvan clasificados por cualquier campo, por ejemplo por los Apellidos de forma ascendente (la forma predeterminada):

SELECT Nombre, Apellidos, NIF FROM Clientes WHERE Provincia = 'Madrid' ORDER BY Apellidos

Pero si queremos los datos de mayor a menor (descendente), le añadimos la instrucción DESC después del campo por el que queremos clasificar:

SELECT Nombre, Apellidos, NIF FROM Clientes WHERE Provincia = 'Madrid' ORDER BY Apellidos DESC

O si queremos que la clasificación se haga usando dos campos, esos campos los indicaremos separados por comas:

SELECT Nombre, Apellidos, NIF FROM Clientes WHERE Provincia = 'Madrid' ORDER BY Apellidos, Nombre

Y si queremos que el orden sea descendente, le añadimos a continuación la instrucción DESC detrás de cada campo:

SELECT Nombre, Apellidos, NIF FROM Clientes WHERE Provincia = 'Madrid' ORDER BY Apellidos DESC, Nombre DESC

También podemos clasificar en distinto orden los campos indicados tras ORDER BY, por ejemplo:

SELECT * FROM Clientes ORDER BY Apellidos DESC, Nombre ASC, NIF DESC

Indicar el número máximo de filas a devolver (TOP)

Al realizar una selección de datos clasificados (usando ORDER BY), podemos indicar el número de filas (registros) máximos que queremos devolver, para ello indicaremos TOP y el número de filas o el porcentaje de filas a devolver:

Con las siguientes instrucciones se devolverán los primeros 50 registros (si los hay) que cumplan las condiciones indicadas:

SELECT TOP 50 Nombre, Apellidos, NIF FROM Clientes WHERE Provincia = 'Madrid' ORDER BY Apellidos DESC

TOP no diferencia filas que sean iguales, es decir, si la fila 50 y la 51 tienen los mismos Apellidos, devolverá 51.

En este otro ejemplo, se devolverá el 20% de las filas que coincidan con las instrucciones SQL indicadas:

SELECT TOP 20 PERCENT Nombre, Apellidos, NIF FROM Clientes WHERE Provincia = 'Madrid' ORDER BY Apellidos DESC

Nota:

Dependiendo de que estemos usando DAO o ADO el número de filas devueltas puede que sea distinto de cuando usamos ADO.NET, al menos en una misma tabla, usando TOP 150, con ADO me devolvía 151 filas y con ADO.NET me devolvía 150.

No se si es que TOP se comporta de forma diferente en ADO.NET

Actualizar los datos según un criterio (UPDATE)

Si lo que quieres es actualizar el contenido de un campo cuando se cumpla un criterio indicado, en lugar de recorrer todas las filas, podemos usar UPDATE / SET, por ejemplo:

UPDATE Clientes SET NPr = 28 WHERE Provincia = 'Madrid'

Esto hará que se asigne un valor 28 al campo NPr de todos los clientes que cumplan lo que se indica después de WHERE, es decir que cumplan el criterio indicado.

También podemos indicar (después de SET) varios campos a actualizar, separándolos por comas:

UPDATE Clientes SET NPr = 28, Patrón = 'San Isidro' WHERE Provincia = 'Madrid'

Una vez ejecutadas estas instrucciones SQL no se podrá deshacer los cambios, al menos si estamos trabajando con Recordsets DAO o ADO, ya que si trabajamos con ADO.NET, esos datos sólo se harán permanentes al actualizar "físicamente" los datos con el DataAdapter.

Eliminar los datos según un criterio (DELETE)

De la misma forma que podemos actualizar la información mediante un criterio WHERE, podemos eliminar los registros de forma "masiva" usando la instrucción DELETE.

Por ejemplo para eliminar todos los Clientes de Madrid:

DELETE * FROM Clientes WHERE Provincia = 'Madrid'

Nota:

Ni que decir tiene que este tipo de instrucciones SQL hay que usarla con muchísima precaución, ya que si la tabla está ligada a otra, también se perderán los datos relacionados.

Y una vez eliminados los datos... ya no se pueden recuperar.

El uso de DELETE no elimina la tabla, aunque se eliminaran todos los registros.

4. EJEMPLOS

Varios ejemplos para verlo mas claro:

SELECT JUGADOR_NO, APELLIDO, POSICION, EQUIPO

FROM JUGADORES

WHERE EQUIPO_NO = 'VALENCIA'

ORDER BY APELLIDO;

Este ejemplo mostrar el número de jugador (jugador_no) el apellido (Apellido), la posición en la que juega (Posición), y el equipo (Equipo) al que pertenece.

Seleccionara todos los datos de la tabla jugadores donde (Where) el nombre de equipo (Equipo_No) sea igual que la palabra 'Valencia' y se ordenara (order by) apellido. Notemos también que no pone ni 'Distinct' ni 'All'. Por defecto generara la sentencia con ALL.

SELECT *

FROM JUGADORES

WHERE POSICION = 'DELANTERO'

ORDER BY JUGADOR_NO;

Este ejemplo muestra todos los campos de la tabla jugadores donde (Where) la posición sea igual que 'Delantero' y lo ordena por número de jugador. Al no poner nada se presupone que es ascendentemente (Asc).

SELECT *

FROM JUGADORES

WHERE EQUIPO_NO = 'VALENCIA' AND POSICION = 'DELANTERO'

ORDER BY APELLIDO DESC, JUGADOR_NO ASC;

En este ejemplo selecciona todos los campos de la tabla jugadores donde (Where) el nombre del equipo sea igual a 'Valencia' y la posición de los jugadores sea igual a 'Delantero'. Por ultimo los ordena por 'Apellido' descendentemente y por numero de jugador ascendentemente.

jueves, 28 de agosto de 2008

Relaciones,Primary key and Foreign key

PRIMARY KEY eExpression2 TAG TagName2 memo1 M, memo2 M NOCPTRANS)

Especifica un campo o combinación de campos de la tabla para crear un índice principal. No puede usar la cláusula PRIMARY KEY si antes ha creado un índice principal para un campo, ya que una tabla sólo puede tener un índice principal. Si incluye más de una cláusula PRIMARY KEY en una instrucción CREATE TABLE, Visual FoxPro genera un error.

El parámetro TagName2 especifica un nombre para la etiqueta de índice principal eExpression2. El nombre de la etiqueta de índice puede tener hasta 10 caracteres.

FOREIGN KEY eExpression4 TAG TagName4 [ NODUP ]

Crea un índice externo (no principal) y establece una relación con una tabla primaria. Puede crear múltiples índices externos para una tabla, pero la expresión para índice externo deber especificar diferentes campos de la tabla.

Puede crear relaciones persistentes entre las tablas de la base de datos. Las relaciones persistentes son relaciones entre tablas de una base de datos que se almacenan en el archivo de la base de datos y tienen las características siguientes:

A diferencia de las relaciones temporales creadas con el comando SET RELATION, las relaciones persistentes no necesitan ser creadas de nuevo cada vez que se utilizan las tablas. Sin embargo, como las relaciones persistentes no controlan la relación entre los punteros de registros de las tablas, al programar aplicaciones de Visual FoxPro se utilizan relaciones de ambos tipos.

En Visual FoxPro se utilizan los índices para establecer relaciones persistentes entre las tablas de una base de datos. La relación se define entre los índices y no entre los campos, lo que permite relacionar las tablas basándose en una expresión de índice simple o compleja.

Para preparar las relaciones

  1. Determine qué tabla tiene los registros principales y qué tabla tiene los registros relacionados.
  2. Agregue un campo de enteros a la tabla que contiene el registro principal y, a continuación, agregue un índice principal al nuevo campo.
  3. Agregue a la tabla que contiene los campos relacionados un campo que coincida con la clave principal de la otra tabla y, a continuación, agregue un índice normal al nuevo campo.

Nota Use la misma expresión para ambos índices. Por ejemplo, si usa una función en la expresión del campo de clave principal tiene que usar la misma función en la expresión del campo de clave externa.

Para crear una relación persistente entre tablas






En el Diseñador de bases de datos, elija el nombre del índice que desee relacionar y arrástrelo hasta el nombre del índice de la tabla relacionada.

–O bien–

  • Utilice la cláusula FOREIGN KEY con los comandos CREATE TABLE o ALTER TABLE.

Por ejemplo, el comando siguiente agrega una relación persistente de uno a varios entre las tablas customer y orders, basándose en la clave principal cust_id de la tabla customer y en una nueva clave externa, cust_id, de la tabla orders:

ALTER TABLE orders;
ADD FOREIGN KEY cust_id TAG ;
cust_id REFERENCES customer

Si examina el esquema de la base de datos en el Diseñador de bases de datos, verá una línea que une orders y customer, lo que representa la nueva relación persistente.

Los índices proporcionan la base para relaciones persistentes


El tipo de etiqueta o clave de índice determinará el tipo de relación persistente que puede crear. Es necesaria una etiqueta de índice principal o candidato para el lado "uno" de una relación de uno a varios; para el lado "varios" debe utilizar una etiqueta o clave de índice normal.

También puede modificar la relación.

Para modificar una relación entre tablas

  • Haga doble clic en la línea de relación entre las tablas y, a continuación, seleccione las opciones apropiadas en el cuadro de diálogo Modificar relación.

Para eliminar una relación persistente entre tablas

  1. En el Diseñador de bases de datos, haga clic en la línea de relación entre las dos tablas.

El ancho de la línea aumentará para indicar que ha seleccionado la relación.

  1. Presione la tecla SUPR.

–O bien–

Utilice la cláusula DROP FOREIGN KEY con el comando ALTER TABLE.

Por ejemplo, el comando siguiente elimina una relación persistente entre las tablas customer y orders basada en la clave principal cust_id de la tabla customer y en una clave externa, cust_id, de la tabla orders:

ALTER TABLE orders DROP FOREIGN KEY TAG cust_id SAVE


Fuente: archivo dv_foxhelp.chm del directorio de Visual Foxpro



domingo, 24 de agosto de 2008

PARAMETROS SET

PARAMETROS SET

SET DEFAULT TO A: && establece el dispositivo y el directorio

Por ejemplo si los archivos que se van a utilizar se encuentran en el directorio C:\programas\transmisión\datos, escribiremos el comando SET de la siguiente forma:

SET DEFAULT TO C:\programas\transmisión\datos.

SET SYSMENU ON Activa la barra de menús principal de Visual FoxPro durante la ejecución del programa cuando Visual FoxPro espera la introducción de datos a través del teclado durante comandos tales como BROWSE, READ y MODIFY COMMAND.

SET SYSMENU OFF Desactiva la barra de menús principal de Visual FoxPro durante la ejecución del programa.

SET SYSMENU AUTOMATIC Hace que la barra de menús principal de Visual FoxPro esté visible durante la ejecución del programa. La barra de menús queda accesible y los elementos de menú se activan y se desactivan según convenga desde el comando actual. (Es la configuración predeterminada).

SET SYSMENU TO [ListaMenús] Especifica un subconjunto de menús o de títulos de menús para la barra de menús principal de Visual FoxPro. La lista de menús o de títulos de menú puede contener cualquier combinación de menús o títulos separados por comas.
Por ejemplo, el comando siguiente elimina todos los menús de la barra principal de menús de Visual FoxPro excepto los menús Archivo y Ventana: SET SYSMENU TO _MFILE, _MWINDOW

SET SYSMENU TO [DEFAULT] Restaura la barra de menús principal a su configuración predeterminada. Si modificas la barra de menús principal o sus menús, ejecuta SET SYSTEM TO DEFAULT para restaurarla. Puedes especificar una configuración predeterminada con SET SYSMENU SAVE.

SET SYSMENU SAVE Hace que el sistema de menús actual tenga la configuración predeterminada. Si modificas el sistema de menús después de ejecutar SET SYSMENU SAVE, puedes restaurar la configuración previa ejecutando SET SYSMENU TO DEFAULT.

SET SYSMENU NOSAVE Restablece el sistema de menús al menú del sistema predeterminado de Visual FoxPro. Sin embargo, el menú del sistema predeterminado de Visual FoxPro no se muestra hasta que no ejecutes SET SYSMENU TO DEFAULT. SET ECHO OFF

SET PATH se usa para indicar la ruta de busqueda de los archivos utilizados en una aplicación. Su uso es: SET PATH TO «Ruta»

SET ORDER es para indicar el índice a utilizar de los que se encuentran disponibles para una determinada tabla. Su uso es: SET ORDER TO «Indice»

SET PROCEDURE se utiliza para indicar el archivo de procedimientos a utilizar. Su uso es: SET PROCEDURE TO «Archivo»

SET RELATION es usado para indicar la relacón de una tabla respecto a otra de acuerdo a un campo común. Su uso es: SET RELATION TO «Campo» INTO «Tabla»

SET VIEW
abre o cierra la ventana Vista, o bien restaura el entorno de Visual FoxPro desde un archivo de vista. Su uso es: SET VIEW TO «Archivo»

SET KEY Sirve para especificar el acceso a un intervalo de registros basado en sus claves de índice. Su usos es: SET KEY TO «Expresión»

SET CENTURY Determina si Microsoft Visual FoxPro mostrará o no el siglo

en las expresiones Date y cómo interpreta Visual FoxPro las fechas que sólo especifican los años con 2 dígitos.

SET CENTURY [ON | OFF]

ON

Especifica un formato de año con cuatro dígitos que ocupa 10

caracteres (incluidos los delimitadores de fecha). Nota Para

proporcionar compatibilidad con el año 2000, se recomienda que

establezca siempre SET CENTURY en ON.

OFF

(Predeterminado) Especifica un formato de año de dos dígitos que

ocupa ocho caracteres y supone el siglo veinte para los cálculos

de fechas.

SET DATE Especifica el formato para mostrar las expresiones Date y

DateTime.

SET DATE [TO] AMERICAN | ANSI | BRITISH | FRENCH |

GERMAN | ITALIAN | JAPAN | TAIWAN | USA | MDY |

DMY | YMD

formatos de fecha resultantes:

AMD aa/mm/dd

DMY dd/mm/aa

MDY mm/dd/aa

USA mm-dd-aa

TAIWAN aa/mm/dd

JAPAN aa/mm/dd

ITALIAN dd-mm-aa

GERMAN dd.mm.aa

BRITISH/FRENCH dd/mm/aa

ANSI aa.mm.dd

AMERICAN mm/dd/aa

•La configuración predeterminada es AMERICAN.

•El valor SET DATE también determina cómo aparecerá la fecha en las expresiones DateTime.

SET HOURS Establece el formato de hora del reloj del sistema en 12 ó 24 horas.

SET HOURS TO [12 | 24]

TO 12

(Predeterminado) Especifica el formato de 12 horas.

TO 24

Especifica el formato de 24 horas.

Utilice SET HOURS TO sin 12 ni 24 para volver al formato de 12 horas

predeterminado.

TIME( ) devuelve siempre un valor en formato 24 horas y no se ve

afectado por SET HOURS. El valor devuelto por DATETIME( ) se

determina con la configuración actual de SET HOURS.

SET SECONDS Especifica si se muestran los segundos en la parte de hora de los valores DateTime.

SET SECONDS [ON | OFF]

Parámetros

ON

(Predeterminado) Especifica que se muestren los segundos de los valores DateTime.

OFF

Especifica que no se muestren los segundos en valores DateTime.

SET STRICTDATE Indica como se manejara el error en formatos de fecha de acuerdo a

configuraciones anteriores

SET STRICTDATE TO [0 | 1 | 2]

0

Especifica que está desactivada la comprobación del formato de fecha.

1

Especifica que todas las constantes Date y DateTime están en el formato de fecha

estricto. Cualquier constante Date o DateTime que no esté en formato estricto o

que se evalúe como un valor no valido genera un error, tanto en tiempo de

compilación, como en tiempo de ejecución o durante una sesión interactiva de

Visual FoxPro. 1 es el valor predeterminado para las sesiones interactivas en

Visual FoxPro.

2

Equivale a establecer STRICTDATE en 1, pero además genera un error de

compilación (2033 – CTOD y CTOT pueden producir resultados incorrectos)

siempre que las funciones CTOD( ) y CTOT( ) aparezcan en el código. Como los

valores devueltos por CTOD( ) y CTOT( ) se basan en SET DATE y SET

CENTURY para interpretar la fecha que contienen, pueden producir errores de

incompatibilidad con el año 2000. Utilice DATE( ) y DATETIME( ) con los

argumentos numéricos opcionales para crear constantes y expresiones de tipo

Date y DateTime.

SET DECIMALS Especifica el número de decimales que se mostrarán en

las expresiones numéricas.

SET DECIMALS TO [nDecimalPlaces]

nDecimalPlaces

Especifica el número mínimo de indicadores decimales que se

muestran. El valor predeterminado es dos decimales. El número

máximo de decimales es 18 y el mínimo es cero.

SET DECIMALS especifica el número mínimo de

decimales que se utilizarán para mostrar los resultados

de división, multiplicación, y funciones trigonométricas y

financieras.

SET ANSI Determina cómo se hacen las comparaciones de cadenas de distintas

longitudes utilizando el operador = en comandos SQL de Visual FoxPro.

SET ANSI [ON | OFF]

ON

Rellena la cadena más corta con los espacios en blanco necesarios para igualar la

longitud de la cadena más larga. Las dos cadenas se comparan carácter a

carácter en toda su longitud. Considere en esta comparación: 'Tommy' = 'Tom'

El resultado es falso (.F.) si SET ANSI está activado porque, al rellenarse, ‘Tom’

se convierte en ‘Tom ’ y las cadenas ‘Tom ’ y ‘Tommy’ no coinciden carácter a

carácter.

El operador = = utiliza este método para las comparaciones de los comandos SQL

de Visual FoxPro.

OFF

Especifica que la cadena más corta no se rellenará con espacios en blanco.

(Predeterminado) Las dos cadenas se comparan carácter a carácter hasta llegar

al final de la cadena más corta. Considere esta comparación:

'Tommy' = 'Tom' El resultado es verdadero (.T.) cuando SET ANSI está desactivado

porque la comparación termina después de ‘Tom’.

--------------------------------------------------------------------------------------------------------------------

Modificar opciones de interfaz

Puede modificar varias características de la interfaz de Visual FoxPro desde la ficha Ver de diálogo Opciones o mediante los equivalentes de idioma.

Status Bar - SET STATUS BAR

Clock - SET CLOCK

Command Results (1) - SET TALK (1)

System Messages - SET NOTIFY

(1) Opción pertinentes a los datos actuales sólo período de sesiones.

Modificar datos de entrada y de programación opciones

Puede modificar la entrada de datos y programación opciones en la ficha General del cuadro de diálogo Opciones, o mediante los equivalentes de idioma que se muestran en esta tabla:

Warning Sound - SET BELL

Cancel Programs on Escape - SET ESCAPE

Show Trace Window - SET ECHO

Log Compilation Errors - SET LOGERRORS

dBASE Compatibility - SET COMPATIBLE

Use FoxPro Color Palette - SET PALETTE

Confirm File Replacement (1) - SET SAFETY (1)

SET DEVELOPMENT - SET DEVELOPMENT

Navigation Keys - SET KEYCOMP

Fill New Records with Current Values (1) - SET CARRY (1)

Enter or Tab to Exit Fields (1) - SET CONFIRM (1)

(1) Opción pertinentes a los datos actuales sólo período de sesiones

Modificar opciones de tabla

Puede modificar opciones de tablas desde la ficha Datos del Cuadro de diálogo Opciones, o mediante los equivalentes de idioma que se muestran en esta tabla:

Open Exclusive (1) - SET EXCLUSIVE (1)

AutoSave (1) - SET AUTOSAVE (1)

Show Field Names - SET HEADINGS

Prompt for Code Page - SET CPDIALOG

Ignore Deleted Records - SET DELETED

Rushmore Optimization - SET OPTIMIZE

Unique Records in Indexes (1) - SET UNIQUE (1)

Collating Sequence(1) - SET COLLATE (1)

Record-counter Interval - SET ODOMETER

Memo Block Size (1) - SET BLOCKSIZE (1)

Browse-refresh Interval (1) - SET REFRESH (1)

Table-refresh Interval1 - SET REFRESH (1)

SET NEAR (1) - SET NEAR (1)

SET EXACT (1) - SET EXACT (1)

SET ANSI (1) - SET ANSI (1)

Automatic File Locking (1) - SET LOCK (1)

Multiple Record Locks (1) - SET MULTILOCKS (1)

Buffering - CURSORSETPROP("Buffering",...)

Reprocessing (1) - SET REPROCESS (1)

(1) Opción pertinentes a los datos actuales sólo período de sesiones

Modificar la ruta de acceso del directorio y las opciones de ubicación de archivo

Puede modificar de directorio, la ruta de acceso y opciones de archivo en la ficha Ubicación de archivos del cuadro de diálogo Opciones, o mediante los equivalentes de idioma que se muestran en esta tabla:

Default Directory - SET DEFAULT

Search Path1 - SET PATH1

Temporary Files - TMPFILES

Help File - SET HELP

Resource File - SET RESOURCE

Converter - _CONVERTER

Menu Builder - _GENMENU

Spelling Checker - _SPELLCHK

Builders - _BUILDER

Wizards - _WIZARD

Modificación de fecha, hora y opciones formato numérico

Puede modificar la fecha, hora y las opciones de formato numérico para la sesión de datos actual en la ficha internacional del cuadro de diálogo Opciones, o mediante los equivalentes de idioma que se muestran en esta tabla:

Use System Settings (1) - SET SYSFORMATS (1)

Date Format (1) - SET DATE (1)

Date Separator (1) - SET MARK TO (1)

Century (1) - SET CENTURY (1)

12-Hour - SET HOURS

24-Hour - SET HOURS

Seconds - SET SECONDS

Currency Format (1) - SET CURRENCY (1)

Currency Symbol (1) - SET CURRENCY (1)

1000 Separator (1) - SET SEPARATOR (1)

Decimal Separator (1) - SET POINT (1)

Decimal Digits (1) - SET DECIMALS (1)

Week Starts on - SET FDOW

First Week of Year - SET FWEEK

(1) Opción pertinentes a los datos actuales sólo período de sesiones

http://www.monografias.com/trabajos10/vfp/vfp.shtml#pro

http://www.monografias.com/trabajos4/foxpro/foxpro.shtml

http://support.microsoft.com/kb/132229/es

Unidad IV - 7 - Parametros del entorno en VFP (PDF)