Share via


Función JetGetRecordSize

Se aplica a: Windows | Windows Server

Función JetGetRecordSize

La función JetGetRecordSize recupera información de tamaño de registro de la ubicación deseada.

Windows Vista: JetGetRecordSize se introduce en Windows Vista.

    JET_ERR JET_API JetGetRecordSize(
      __in          JET_SESID sesid,
      __in          JET_TABLEID tableid,
      __out         JET_RECSIZE* precsize,
      __in          const JET_GRBIT grbit
    );

Parámetros

sesid

Identifica el contexto de sesión de base de datos que se usará para la llamada API.

tableid

Identifica la tabla o el cursor que se usará para la llamada API. El cursor debe colocarse en un registro o tener una actualización preparada.

precsize

Puntero a un búfer de salida para la estructura de JET_RECSIZE .

grbit

Se trata de uno o varios de los valores siguientes.

Valor

Significado

JET_bitRecordSizeInCopyBuffer

Esto recupera el tamaño del registro que se encuentra en el búfer de copia preparado para la actualización. De lo contrario, el tableid o cursor se debe colocar en un registro y ese registro se usará.

JET_bitRecordSizeRunningTotal

Cuando se especifica este bit, el JET_RECSIZE no se reduce a cero antes de rellenar el contenido, actuando eficazmente como una acumulación de las estadísticas de varios registros visitados o actualizados.

JET_bitRecordSizeLocal

Esto hace que la API omita valores largos no intrínsecos. Por ejemplo, solo se usará el registro local de la página.

Valor devuelto

Esta función devuelve el tipo de datos JET_ERR con uno de los siguientes códigos de retorno. Para obtener más información sobre los posibles errores de ESE, vea Extensible Storage Engine Errors and Error Handling Parameters.

Código devuelto

Descripción

JET_errSuccess

La operación se ha completado correctamente.

JET_errInvalidGrbit

Una de las opciones solicitadas no era válida o no se implementó. La función JetGetRecordSize devolverá este error cuando se especifique un grbit no válido.

JET_errNotInitialized

No es posible completar la operación porque no se ha inicializado la instancia asociada a la sesión.

JET_errClientRequestToStopJetService

No es posible completar la operación porque toda la actividad de la instancia asociada a la sesión ha dejado de funcionar como resultado de una llamada a JetStopService.

JET_errInstanceUnavailable

No es posible completar la operación porque la instancia asociada a la sesión ha encontrado un error irrecuperable que requiere que se revoque el acceso a todos los datos para proteger la integridad de esos datos.

Windows XP: JET_errInstanceUnavailable solo los devolverá Windows XP y versiones posteriores.

JET_errTermInProgress

No es posible completar la operación porque se está cerrando la instancia asociada a la sesión.

JET_errRestoreInProgress

No es posible completar la operación porque hay una operación de restauración en curso en la instancia asociada a la sesión.

JET_errSessionSharingViolation

No es válido usar la misma sesión de más de un subproceso al mismo tiempo.

Windows XP: JET_errInstanceUnavailable solo los devolverá Windows XP y versiones posteriores.

JET_errNoCurrentRecord

Esto puede ocurrir si el cursor se ha colocado incorrectamente.

JET_errRecordDeleted

Si el cursor no se ha colocado en una transacción, esto puede ocurrir si otro subproceso elimina el registro de en esta sesión.

JET_errInvalidParameter

Esto se puede devolver si se pasó un precsizeNULL.

Comentarios

El tamaño de la clave acumulada en el campo cbOverhead de JET_RECSIZE se ve afectado por JET_bitRecordSizeInCopyBuffer. Si se especifica este bit, el tamaño de clave acumulado en el campo cbOverhead es el tamaño de clave completo. Si no se usa este bit, el tamaño de clave acumulado no incluirá ningún tamaño guardado debido a la compresión del prefijo de clave.

Requisitos

Requisito Value

Cliente

Requiere Windows Vista.

Servidor

Requiere Windows Server 2008.

Encabezado

Declarado en Esent.h.

Library

Use ESENT.lib.

Archivo DLL

Requiere ESENT.dll.

Consulte también

JET_ERR
JET_GRBIT
JET_SESID
JET_RECSIZE
JET_TABLEID