FoxPro/Visual FoxPro - AUXILIO

 
Vista:

AUXILIO

Publicado por Esteban Andrade (11 intervenciones) el 28/10/2007 00:11:18
Hola compañeros.

Mi situación es la siguiente:

Tengo que presentar en la Universidad una exposición acerca de Bases de Datos y necesito mostrar visualmente el comportamiento de esta.

Por supuesto, lo primero que pensé es en Fox es facilísimo. En fin, ya tengo hecho todo el proyecto, funcionando y corriendo.

La Base de datos tiene 6 relaciones y entre ellas se unen de diferentes maneras a según se requiera (evidentemente), pero mi problema es este.

Yo no puedo instalar VFP en las máquinas de la universidad, así que lo tuve que hacer en un ejecutable (.exe) y distribuirlo. Pero, ¿cómo diablos puedo hacer para realizar consultas en las relaciones? Evidentemente ya en el sistema he puesto algunas consultas e informes predefinidos, pero necesito demostrar como puedo obtener la información de diferentes relaciones en un solo browser o cursor. COMO HAGO SI EL CREATE QUERY NO ME FUNCIONA CON TODO YA DISTRIBUIDO!!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:AUXILIO

Publicado por Plinio II (62 intervenciones) el 29/10/2007 20:40:55
Tienes que hacerlo a pura programación.

Use tabla1 in 0
use tabla2 in 0
.
.
.
.
use tablen in 0

select a.campo,b.campo,c.campo form tabla1 a inner join tabla2 on a.campo=b.campo where (loquesigue)

Ciertamente es un ejemplo, tu utilizas tus setencias SQL según lo necesites.

Incluso puedes realizar un programa que tenga un formulario para introducir sentencias y colocas las setencias SQL que deseas y luego lo ejecutas, en fin, puedes hacerlo de muchas maneras.

Espero haberte ayudado y suerte en tu trabajo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:AUXILIO

Publicado por Carlos Cuyé (75 intervenciones) el 01/11/2007 22:34:09
Si lo que buscás es mostrar las relaciones existentes en la base de datos, te puede servir la función ADBOBJECTS()

Sitúa los nombres de conexiones con nombre, relaciones, tablas o vistas SQL de la base de datos actual en una matriz de variables de memoria.

Sintaxis

ADBOBJECTS(NombreMatriz, cValor)

Tipos devueltos

Numeric

Argumentos

NombreMatriz Especifica el nombre de la matriz en la que se sitúan los nombres. Si no existe la matriz especificada, Visual FoxPro la creará automáticamente. Si existe y no es lo bastante grande para dar cabida a todos los nombres, Visual FoxPro aumentará automáticamente el tamaño. Si es más grande de lo necesario, Visual FoxPro la truncará. Si existe y ADBOBJECTS( ) devuelve 0 porque no encuentra ningún nombre, permanecerá sin cambios. Si l matriz no existe y ADBOBJECTS( ) devuelve 0, la matriz no se creará.

Cuando especifique CONNECTION, TABLE o VIEW para cValor, se crea una matriz unidimensional. Cada fila de la matriz unidimensional contiene el nombre de una conexión, tabla o vista de la base de datos.

Cuando se especifica RELATION para cValor se crea una matriz bidimensional. Cada fila de la matriz bidimiensional corresponde a una relación de la base de datos. La primera columna de una fila de matriz contiene el nombre de la tabla secundaria, y la columna secundaria de una fila de matriz contiene el nombre de la tabla principal. La tercera columna contiene el nombre de la etiqueta del índice para la tabla secundaria, y la cuarta columna contiene el nombre de la etiqueta del índice para la tabla principal.

La quinta columna de una fila de matriz contiene información de integridad referencial. Esta columna está vacía si la relación no tiene reglas de integridad referencial. Si la relación no tiene reglas de integridad referencial la columna contiene caracteres que corresponden al tipo de reglas de integridad referencial para actualizaciones, eliminaciones e inserciones.

El primer carácter indica el tipo de regla de actualización, el segundo carácter indica el tipo de regla de eliminación y el tercero indica el tipo de regla de inserción.

Los posibles valores para actualizaciones y eliminaciones son "C" para cascada, "R" para restringir e "I" para ignorar. Los valores posibles para inserciones son "R" para restringir e "I" para ignorar. Por ejemplo, si una relación tiene actualizaciones en cascada, eliminaciones restringidas e ignora las reglas de integridad referencial de inserción, la columna contendrá "CRI".

cValor Especifica los nombres que se sitúan en una matriz de variables de memoria. La tabla siguiente indica los valores para cValor y los nombres correspondientes situados en la matriz:

cValor Nombres
CONNECTION Nombres de conexión
RELATION Relaciones de tabla
TABLE Nombres de tabla
VIEW Nombres de vista
El valor de CONNECTION, RELATION, TABLE y VIEW no se puede abreviar.

Comentarios

Cuando se emite ADBOBJECTS( ) debe haber una base de datos abierta y actual; de lo contrario, FoxPro generará un mensaje de error.

La base de datos puede abrir con OPEN DATABASE TuBase
y se activa con SET DATABASE

SET DATABASE especifica la base de datos actual.

Sintaxis

SET DATABASE TO [NombreBaseDatos]

Argumentos

NombreBaseDatos Especifica el nombre de una base de datos abierta que se va a convertir en la base de datos actual. Si omite NombreBaseDatos, ninguna base de datos abierta se convertirá en la base de datos actual.

Comentarios

Es posible abrir muchas bases de datos al mismo tiempo, pero sólo una puede ser la base de datos actual. Los comandos y las funciones que manipulan las bases de datos abiertas, como ADD TABLE y DBC( ), funcionan en la base de datos actual.

La base de datos actual también puede especificarse eligiendo una base de datos abierta en la lista desplegable “Base de datos” de la barra de herramientas Estándar.

Observe que Visual FoxPro puede abrir bases de datos automáticamente cuando se ejecuta una consulta o un Form.

SET DATABASE tiene como alcance la sesión actual de datos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar