Share via


DBGETPROP( ) (Función)

Devuelve una propiedad para la base de datos actual, o para campos, conexiones con nombre, tablas o vistas de la base de datos actual.

DBGETPROP(cName, cType, cProperty)

Valores devueltos

Character, Numeric o Logical

Parámetros

  • cName
    Especifica el nombre de la base de datos actualmente abierta o el campo, conexión con nombre o vista de la base de datos actualmente abierta para los cuales DBGETPROP( ) devuelve información.

    Para devolver información acerca de un campo de una tabla o una vista, escriba delante del nombre del campo el nombre de la tabla o la vista que contiene el campo. Por ejemplo, para devolver información acerca del campo custid de la tabla customer, especifique lo siguiente para cName:

    customer.custid
    
  • cType
    Especifica si cName es la base de datos actual, o un campo, una conexión con nombre, una tabla o una vista de la base de datos actual. La tabla siguiente indica los valores que se pueden especificar para cType:

    cType Descripción
    CONNECTION cName es una conexión con nombre de la base de datos actual.
    DATABASE cName es la base de datos actual.
    FIELD cName es un campo de la base de datos actual.
    TABLE cName es una tabla de la base de datos actual.
    VIEW cName es una vista de la base de datos actual.
  • cProperty
    Especifica el nombre de la propiedad para la cual DBGETPROP( ) devuelve información.

    Las tablas siguientes indican los valores que pueden especificarse para cProperty, los tipos de valores devueltos y las descripciones de cada propiedad. Cada descripción incluye los privilegios de lectura y escritura para cada propiedad. Si una propiedad es de sólo lectura, su valor no podrá cambiarse con DBSETPROP( ). Para obtener información adicional acerca de cómo puede cambiar valores de propiedad, vea DBSETPROP( ).

    Propiedades de conexión

    cProperty Tipo Descripción
    Asynchronous L Modo de conexión. (Valor predeterminado) Falso (.F.) especifica una conexión síncrona. Verdadero (.T.) especifica una conexión asíncrona.
    Lectura y escritura.
    BatchMode L Modo de procesamiento por lotes. (Valor predeterminado) Verdadero (.T.) especifica que la conexión funciona en modo de lotes.
    Lectura y escritura.
    Comments C El texto del comentario de conexión.
    Lectura y escritura.
    ConnectString C La cadena de conexión de inicio de sesión.
    Lectura y escritura.
    ConnectTimeout N El intervalo de espera de conexión en segundos. El valor predeterminado es 0 (espera indefinidamente).
    Lectura y escritura.
    Base de datos C El nombre de la base de datos del servidor especificada con la cláusula DATABASE en el comando CREATE CONNECTION o en el Diseñador de conexiones.
    Lectura y escritura.
    DataSource C El nombre del origen de datos definido en el archivo Odbc.ini.
    Lectura y escritura.
    DispLogin N Contiene un valor Numeric que determina cuándo se muestra el cuadro de diálogo de inicio de sesión ODBC. DispLogin puede adoptar los valores siguientes:

    1 o DB_PROMPTCOMPLETE (de Foxpro.h).1 es el valor predeterminado.

    2 o DB_PROMPTALWAYS (de Foxpro.h).

    3 o DB_PROMPTNEVER (de Foxpro.h).

    Si se especifica 1 o DB_PROMPTCOMPLETE, Microsoft Visual FoxPro sólo muestra el cuadro de diálogo de inicio de sesión ODBC si falta alguna información necesaria.

    Si se especifica 2 o DB_PROMPTALWAYS, se mostrará siempre el cuadro de diálogo de inicio de sesión de ODBC, que permite cambiar las opciones antes de conectar.

    Si se especifica 3 o DB_PROMPTNEVER, no se mostrará el cuadro de diálogo de inicio de sesión de ODBC y Visual FoxPro generará un error si no está disponible la información de inicio de sesión necesaria.
    Lectura y escritura.

    DispWarnings L Contiene un valor lógico que determina si se muestran los avisos no interceptables procedentes de la tabla remota, ODBC o Visual FoxPro. (Valor predeterminado) Verdadero (.T.) especifica que se muestren los errores no interceptables.
    Lectura y escritura.
    IdleTimeout N El intervalo de espera de inactividad en segundos. Las conexiones activas se desactivan después del intervalo de tiempo especificado. El valor predeterminado es 0 (espera indefinidamente).
    Lectura y escritura.
    PacketSize N El tamaño del paquete de red usado por la conexión. Ajustar este valor puede mejorar el rendimiento. El valor predeterminado es 4096 bytes (4K).
    Lectura y escritura
    PassWord C La contraseña de conexión.
    Lectura y escritura.
    QueryTimeout N El intervalo de espera de consulta en segundos. El valor predeterminado es 0 (espera indefinidamente).
    Lectura y escritura.
    Transactions N Contiene un valor numérico que determina cómo administra la conexión las transacciones en la tabla remota. Las transacciones pueden adoptar los valores siguientes:

    1 o DB_TRANSAUTO (de Foxpro.h).1 es el valor predeterminado. El procesamiento de transacciones para la tabla remota se controla automáticamente.

    2 o DB_TRANSMANUAL (de Foxpro.h). El proceso de transacciones se controla automáticamente mediante SQLCOMMIT( ) y SQLROLLBACK( ).

    Lectura y escritura.

    UserId C La identificación del usuario.
    Lectura y escritura.
    WaitTime N El período de tiempo en milisegundos que transcurre antes de que Visual FoxPro compruebe si se ha terminado de ejecutar la instrucción SQL. El valor predeterminado es 100 milisegundos.
    Lectura y escritura.

    Propiedades de la base de datos

    cProperty Tipo Descripción
    Comments C El texto del comentario de la base de datos.
    Lectura y escritura.
    DBCEventFileName C Nombre de archivo y ruta de acceso relativa de un archivo de programa externo que contiene un código de eventos DBC.
    DBCEvents L Estado habilitado de los eventos DBC.
    Establecer en T para habilitarlos.
    Version N El número de versión de la base de datos.
    Sólo lectura.

    Propiedades de campo para tablas

    cProperty Tipo Descripción
    Caption C El título del campo.
    Lectura y escritura.
    Comment C El texto del comentario del campo.
    Lectura y escritura.
    DefaultValue C El valor predeterminado del campo.
    Sólo lectura.
    DisplayClass C Nombre de la clase utilizada para la asignación o mapeo de campos.
    Lectura y escritura.
    DisplayClassLibrary C Ruta de acceso a la biblioteca de clases especificada con la propiedad DisplayClass.
    Lectura y escritura.
    Formato C El formato de presentación del campo. Vea la propiedad Format para obtener una lista de los valores de formato.
    Lectura y escritura.
    InputMask C El formato de entrada del campo. Vea la propiedad InputMask para obtener una lista de los valores de máscara de entrada.
    Lectura y escritura.
    RuleExpression C La expresión de la regla del campo.
    Sólo lectura.
    RuleText C El texto de error de la regla del campo.
    Sólo lectura.

    Propiedades de campo para vistas

    cProperty Tipo Descripción
    Caption C El título del campo.
    Lectura y escritura.
    Comment C El texto del comentario del campo.
    Lectura y escritura.
    DataType C El tipo de datos para un campo de una vista. Inicialmente se establece como el tipo de datos para el campo en el origen de datos.

    Para especificar otro tipo de datos distinto para un campo con DBSETPROP( ), use la sintaxis para crear campos en CREATE TABLE – SQL.

    Por ejemplo, para cambiar el tipo de datos de un campo entero llamado iCost en una tabla llamada Mytable a un tipo numérico con un ancho de 4 y 2 decimales, utilice

    DBSETPROP('mytable.icost', 'field', ; 'DataType', 'N(4,2)')

    También puede incluir la cláusula NOCPTRANS para impedir la conversión de campos de caracteres y memo a otra página de códigos diferente.

    Lectura y escritura para vistas remotas.

    DefaultValue C El valor predeterminado del campo.
    Lectura y escritura.
    KeyField L Contiene verdadero (.T.) si se especifica el campo en una expresión de clave de índice; de lo contrario, contiene falso (.F.).
    Lectura y escritura.
    RuleExpression C La expresión de la regla del campo.
    Lectura y escritura.
    RuleText C El texto de error de la regla del campo.
    Lectura y escritura.
    Updatable L Contiene verdadero (.T.) si el campo puede actualizarse; de lo contrario, contiene falso (.F.).
    Lectura y escritura.
    UpdateName C El nombre del campo utilizado cuando los datos del campo se actualizan en la tabla remota. De forma predeterminada, el nombre del campo de la tabla remota.
    Lectura y escritura.

    Propiedades de tabla

    cProperty Tipo Descripción
    Comment C El texto del comentario de la tabla.
    Lectura y escritura.
    DeleteTrigger C La expresión del desencadenador Eliminar.
    Sólo lectura.
    InsertTrigger C La expresión del desencadenador Insertar.
    Sólo lectura.
    Path C La ruta de acceso relativa a la tabla, en relación con el DBC, que incluye el nombre del archivo.
    Sólo lectura.
    PrimaryKey C El nombre de etiqueta de la clave principal.
    Sólo lectura.
    RuleExpression C La expresión de la regla de la fila.
    Sólo lectura.
    RuleText C El texto de error de la regla de la fila.
    Sólo lectura.
    UpdateTrigger C La expresión del desencadenador Actualizar.
    Sólo lectura.

    Propiedades de vista

    cProperty Tipo Descripción
    BatchUpdateCount N El número de instrucciones de actualización enviadas al apoyo para vistas. 1 es el valor predeterminado. Ajustar este valor puede aumentar considerablemente el rendimiento.
    Lectura y escritura.
    Comment C El texto del comentario de la vista.
    Lectura y escritura.
    CompareMemo L Contiene verdadero (.T.) (valor predeterminado) si los campos memo (del tipo Memo, General, o Picture) están incluidos en la cláusula WHERE para actualizaciones; de lo contrario, contiene falso (.F.).
    Lectura y escritura.
    ConnectName C La conexión con nombre empleada cuando la vista está abierta.
    Sólo lectura.
    FetchAsNeeded L Contiene verdadero (.T.) si los datos se buscan cuando sea necesario; de lo contrario, contiene falso (.F.) (valor predeterminado).
    Lectura y escritura.
    FetchMemo L Contiene verdadero (.T.) (el valor predeterminado) si los campos generales se toman con los resultados de vista; de lo contrario, contiene falso (.F.).
    Lectura y escritura.
    FetchSize N El número de registros tomados al mismo tiempo de las tablas remotas (cuando están activadas las tomas progresivas). El valor predeterminado es 100 registros. Si se establece FetchSize en –1, se recupera el conjunto completo de resultados (limitado por la configuración de MaxRecords).
    Lectura y escritura.
    MaxRecords N El número máximo de filas tomadas cuando se devuelven los conjuntos de resultados. El valor predeterminado es – 1 (se devuelven todas las filas). Un valor de 0 especifica que se ejecuta la vista pero que no se toman resultados.
    Lectura y escritura.
    Offline L Contiene verdadero (.T.) si se trata de una vista fuera de línea. Sólo lectura.
    ParameterList C Los parámetros de la cláusula WHERE. El formato para los parámetros es ''ParameterName1, 'Type1'; ParameterName2, 'Type2'; ...'' donde Type es uno de los caracteres siguientes, que especifica el tipo de parámetro:

    C – Character D – Date T – DateTime N – Numeric F – Floating B – Double I – Integer Y – Currency L - Logical

    Por ejemplo, ''MyParam1, 'C' '' especifica un único parámetro de tipo Character llamado MyParam1.

    Para obtener más información acerca de cómo crear vistas parametrizadas, vea Crear vistas.
    Lectura y escritura.

    Prepared L Contiene verdadero (.T.) si las instrucciones SQL están preparadas para las llamadas de función REQUERY( ) subsiguientes. REQUERY( ) sirve para recuperar los datos para una vista SQL. Vea SQLPREPARE( ) para obtener información adicional acerca de la preparación de instrucciones SQL.El valor predeterminado es Falso (.F.).
    Lectura y escritura.
    RuleExpression C La expresión de la regla de la fila.
    Lectura y escritura.
    RuleText C La expresión del texto de la regla que se muestra cuando se produce un error al modificar datos en una ventana Examinar o Editar.
    Lectura y escritura.
    SendUpdates L Contiene verdadero (.T.) si se envía una consulta actualizada SQL para actualizar tablas remotas; de lo contrario, contiene falso (.F.) (el valor predeterminado).
    Lectura y escritura.
    ShareConnection L Contiene verdadero (.T.) si la vista puede compartir su controlador de conexión con otras conexiones; de lo contrario, contiene falso (.F.).
    Lectura y escritura.
    SourceType N El origen de la vista. SourceType puede adoptar los valores siguientes:

    1. La vista utiliza tablas locales.

    2. La vista utiliza tablas remotas.
    Sólo lectura.

    SQL C La instrucción SQL que se ejecuta cuando se abre la vista.
    Sólo lectura.
    Tablas C Una lista delimitada por comas de los nombres de las tablas.
    Lectura y escritura.
    UpdateType N El tipo de actualización. Los valores válidos son:

    1 o DB_UPDATE (de Foxpro.h). Los datos antiguos se actualizan con los datos nuevos (valor predeterminado).

    2 o DB_DELETEINSERT (de Foxpro.h). Los datos antiguos se eliminan y se insertan los nuevos.
    Lectura y escritura.

    UseMemoSize N El tamaño mínimo (en bytes) para el que se devuelven columnas de resultado en campos memo. Por ejemplo, si el ancho de un resultado de columna es mayor que el valor de UseMemoSize, dicho resultado se almacena en un campo memo. UseMemoSize puede variar de 1 a 255; el valor predeterminado es 255.
    Lectura y escritura.
    WhereType N La cláusula WHERE empleada para actualizar tablas remotas. WhereType puede asumir los valores siguientes:

    1 o DB_KEY (de Foxpro.h). La cláusula WHERE usada para actualizar tablas remotas sólo consta de campos principales especificados con la propiedad KeyFieldList.

    2 o DB_KEYANDUPDATABLE (de Foxpro.h). La cláusula WHERE usada para actualizar tablas remotas consta de los campos principales especificados con la propiedad KeyFieldList y cualquier campo actualizable.

    3 o DB_KEYANDMODIFIED (de Foxpro.h) (valor predeterminado). La cláusula WHERE empleada para actualizar tablas remotas consta de los campos principales especificados con la propiedad KeyFieldList y cualquier otro campo modificado.

    4 o DB_KEYANDTIMESTAMP (de Foxpro.h). La cláusula WHERE usada para actualizar tablas remotas consta de los campos principales especificados con la propiedad KeyFieldList y una comparación de las marcas de hora.

    Si desea obtener más información acerca de la propiedad WhereType, vea Crear vistas.

    Lectura y escritura.

Observaciones

Es necesario abrir una base de datos para poder obtener sus propiedades o las de sus conexiones, tablas, vistas o campos. No es necesario ejecutar el comando USE para abrir una tabla o vista antes de obtener sus propiedades.

Para obtener más detalles acerca de las propiedades que puede obtener para conexiones, bases de datos, campos, tablas y vistas, consulte los temas que figuran en la siguiente tabla.

Para obtener detalles acerca de Consulte este tema En esta sección
Propiedades de la base de datos Ver y configurar propiedades de bases de datos Trabajar con tablas
Conexiones Acceso a datos remotos Crear vistas
Vistas   Crear vistas
Desencadenadores Desencadenar el uso Trabajar con tablas
Títulos Controlar la presentación de un campo Trabajar con tablas
Valores predeterminados Crear valores predeterminados de campo Trabajar con tablas
  Crear valores predeterminados para campos de vista Crear vistas
Comentarios "Agregar comentarios a los campos" en Elegir los tipos de datos Trabajar con tablas
  Ver y configurar propiedades de bases de datos Crear bases de datos
Clave principal Controlar los valores duplicados Trabajar con tablas
Reglas Exigir reglas de empresa Trabajar con tablas
  Establecer o modificar reglas de campo o de tabla Trabajar con tablas
  Crear reglas en campos y filas de vistas Crear vistas

Ejemplo

En el siguiente ejemplo se muestra el nombre del campo de la clave principal para la tabla customer. Después se muestran los comentarios para el campo cust_id en la tabla customer. Si no hay ningún comentario para el campo, aparecerá un mensaje que indica que no hay ningún comentario de campo. Para agregar comentarios, vea el ejemplo de DBSETPROP( ).

CLOSE DATABASES
CLEAR

OPEN DATABASE (HOME(2) + 'Data\testdata')

* Displays the primary key field
cResults = DBGETPROP("customer", "Table", "PrimaryKey")
=MESSAGEBOX(cResults)   && Displays    'cust_id'

* Displays comments for the field 'cust_id'
cResults = DBGETPROP("customer.cust_id", "Field", "Comment")
IF LEN(ALLTRIM(cResults)) = 0
   =MESSAGEBOX("No Comment for this field." + CHR(13) + ;
     CHR (13) + "Use DBSETPROP( ) to add comments.")
ELSE
   =MESSAGEBOX("Cust_id field comments: " + cRESULTS)
ENDIF

Vea también

ADD TABLE | CREATE CONNECTION | CREATE DATABASE | CREATE SQL VIEW | CURSORGETPROP( ) | CURSORSETPROP( ) | DBSETPROP( ) | DISPLAY DATABASE | LIST DATABASE | RENAME CONNECTION | SQLCOMMIT( ) | SQLROLLBACK( )