Função JetGetRecordSize
Aplica-se a: Windows | Windows Server
Função JetGetRecordSize
A função JetGetRecordSize recupera informações de tamanho de registro do local desejado.
Windows Vista: JetGetRecordSize é introduzido no 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 o contexto de sessão do banco de dados que será usado para a chamada à API.
Tableid
Identifica a tabela ou o cursor que será usado para a chamada à API. O cursor deve ser posicionado em um registro ou ter uma atualização preparada.
precsize
Um ponteiro para um buffer de saída para a estrutura JET_RECSIZE .
grbit
Esse é um ou mais dos valores a seguir.
Valor |
Significado |
---|---|
JET_bitRecordSizeInCopyBuffer |
Isso recupera o tamanho do registro que está no buffer de cópia preparado para atualização. Caso contrário, o tableid ou cursor deverá ser posicionado em um registro e esse registro será usado. |
JET_bitRecordSizeRunningTotal |
Quando esse bit é especificado, o JET_RECSIZE não é zerado antes de preencher o conteúdo, atuando efetivamente como um acúmulo de estatísticas para vários registros visitados ou atualizados. |
JET_bitRecordSizeLocal |
Isso faz com que a API ignore valores longos não intrínsecos. Por exemplo, somente o registro local na página será usado. |
Valor Retornado
Essa função retorna o tipo de dados JET_ERR com um dos seguintes códigos de retorno. Para obter mais informações sobre os possíveis erros de ESE, consulte Erros extensíveis do mecanismo de armazenamento e parâmetros de tratamento de erros.
Código de retorno |
Descrição |
---|---|
JET_errSuccess |
A operação foi concluída com sucesso. |
JET_errInvalidGrbit |
Uma das opções solicitadas era inválida ou não foi implementada. Esse erro será retornado pela função JetGetRecordSize quando um grbit ilegal for especificado. |
JET_errNotInitialized |
Não é possível concluir a operação porque a instância associada à sessão não foi inicializada. |
JET_errClientRequestToStopJetService |
Não é possível concluir a operação porque todas as atividades na instância associada à sessão cessaram como resultado de uma chamada para JetStopService. |
JET_errInstanceUnavailable |
Não é possível concluir a operação porque a instância associada à sessão encontrou um erro fatal que exige que o acesso a todos os dados seja revogado para proteger a integridade desses dados. Windows XP: JET_errInstanceUnavailable só será retornado pelo Windows XP e versões posteriores. |
JET_errTermInProgress |
Não é possível concluir a operação porque a instância associada à sessão está sendo desligada. |
JET_errRestoreInProgress |
Não é possível concluir a operação porque uma operação de restauração está em andamento na instância associada à sessão. |
JET_errSessionSharingViolation |
É inválido usar a mesma sessão de mais de um thread ao mesmo tempo. Windows XP: JET_errInstanceUnavailable só será retornado pelo Windows XP e versões posteriores. |
JET_errNoCurrentRecord |
Isso pode acontecer se o cursor foi posicionado incorretamente. |
JET_errRecordDeleted |
Se o cursor não tiver sido posicionado em uma transação, isso poderá acontecer se outro thread excluir o registro de nesta sessão. |
JET_errInvalidParameter |
Isso poderá ser retornado se um precsizeNULL tiver sido passado. |
Comentários
O tamanho da chave acumulada no campo cbOverhead de JET_RECSIZE é afetado por JET_bitRecordSizeInCopyBuffer. Se esse bit for especificado, o tamanho da chave acumulado no campo cbOverhead será o tamanho completo da chave. Se esse bit não for usado, o tamanho da chave acumulado não incluirá nenhum tamanho salvo devido à compactação de prefixo de chave.
Requisitos
Requisito | Valor |
---|---|
Cliente |
Requer o Windows Vista. |
Servidor |
Requer o Windows Server 2008. |
Cabeçalho |
Declarado em Esent.h. |
Biblioteca |
Use ESENT.lib. |
DLL |
Requer ESENT.dll. |