Compartir a través de


SQLTABLES( ) (Función)

Almacena los nombres de tablas de un origen de datos en un cursor de Visual FoxPro.

SQLTABLES(nConnectionHandle [, cTableTypes] [, cCursorName])

Valores devueltos

Numeric

Parámetros

  • nConnectionHandle
    Especifica el identificador de conexión al origen de datos devuelto por SQLCONNECT( ).

  • cTableTypes
    Especifica uno o más tipos de tablas. Los tipos de tablas válidos son 'TABLE', 'VIEW', 'SYSTEM TABLE' o cualquier identificador de tipo tabla específico para un origen de datos válido. cTableTypes debe escribirse en mayúsculas. Si incluye una lista de tipos de tablas, separe los tipos con comas.

    Si omite cTableTypes o si cTableTypes es una cadena vacía, se seleccionarán todos los nombres de tablas del origen de datos.

    El tipo de tabla que especifique debe estar limitado por comillas simples. El ejemplo siguiente demuestra cómo se especifican los tipos de tablas 'VIEW' y 'SYSTEM TABLE' como un literal de cadena.

    ? SQLTABLES(handle, "'VIEW', 'SYSTEM TABLE'", "mydbresult")
    
  • cCursorName
    Especifica el nombre del cursor de Visual FoxPro al que se envía el conjunto de resultados. Si no incluye un nombre de cursor, Visual FoxPro utilizará el nombre predeterminado SQLRESULT.

    La tabla siguiente muestra las columnas del cursor.

    Nombre de columna Descripción
    TABLE_QUALIFIER Identificador del calificador de la tabla
    TABLE_OWNER Identificador del propietario de la tabla
    TABLE_NAME El nombre de la tabla tal como aparece en el diccionario de datos
    TABLE_TYPE El tipo de la tabla tal como aparece en el diccionario de datos
    REMARKS Una descripción de la tabla

Observaciones

SQLTABLES( ) devuelve 1 si se crea el cursor, 0 si sigue ejecutándose SQLTABLES( ), – 1 si se produce un error de nivel de conexión y – 2 si se produce un error de nivel de entorno.

SQLTABLES( ) es una de las cuatro funciones que se pueden ejecutar en modo síncrono o asíncrono. El valor Asíncrona de SQLSETPROP( ) determina si estas funciones se ejecutan en modo síncrono o asíncrono. En modo asíncrono, deberá llamar a SQLTABLES( ) repetidamente hasta que devuelva un valor distinto de falso (.F.), lo que significa que la función sigue ejecutándose.

Ejemplo

El ejemplo siguiente supone que hay un origen de datos ODBC disponible llamado MyFoxSQLNT y que el Id. de usuario para el origen de datos es "sa". Se ejecuta SQLCONNECT( ) y su valor devuelto se almacena en una variable llamada gnConnHandle.

Si no puede conectarse al origen de datos, SQLCONNECT( ) devuelve un número negativo y aparece un mensaje.

Si es posible conectar con el origen de datos, SQLCONNECT( ) devuelve un número positivo y se muestra un cuadro de diálogo. Se utiliza SQLTABLES( ) para crear un cursor denominado mycursor que contiene información acerca de las tablas del origen de datos. LIST se utiliza para mostrar información acerca de las tablas.

STORE SQLCONNECT('MyFoxSQLNT', 'sa') TO gnConnHandle
IF gnConnHandle < 0
   = MESSAGEBOX('Cannot make connection', 16, 'SQL Connect Error')
ELSE
   = MESSAGEBOX('Connection made', 48, 'SQL Connect Message')
   STORE SQLTABLES(gnConnHandle, 'TABLE', 'mycursor') TO nTables
   IF nTables = 1
      SELECT mycursor
      LIST
   ENDIF
ENDIF

Vea también

AERROR( ) | SQLCOLUMNS( ) | SQLCONNECT( ) | SQLGETPROP( ) | SQLSETPROP( )