Compartilhar via


Função JetGotoPosition

Aplica-se a: Windows | Windows Server

Função JetGotoPosition

A função JetGotoPosition move um cursor para um novo local que é uma fração do caminho pelo índice atual. A fração é aproximadamente igual à seguinte:

precpos-centriesLT>/precpos-centriesTotal>

Essa operação é executada em resposta à entrada da caixa de rolagem do usuário recebida quando o usuário tenta mostrar dados que começam em parte por meio de um conjunto de dados.

    JET_ERR JET_API JetGotoPosition(
      __in          JET_SESID sesid,
      __in          JET_TABLEID tableid,
      __in          JET_RECPOS* precpos
    );

Parâmetros

sesid

A sessão a ser usada para essa chamada.

Tableid

O cursor a ser usado para essa chamada.

precpos

A descrição da fração a ser usada no posicionamento do cursor no índice atual.

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_errClientRequestToStopJetService

A operação não pôde ser concluída porque todas as atividades na instância associada à sessão cessaram como resultado de uma chamada para JetStopService.

JET_errInstanceUnavailable

A operação não pôde ser concluída 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: Esse valor retornado é introduzido no Windows XP.

JET_errInvalidParameter

O precpos-cbStruct> especificado não é um tamanho válido para a estrutura JET_RECPOS ou precpos-centriesLT> é maior que precpos-centriesTotal>.

JET_errNotInitialized

A operação não pode ser concluída porque a instância associada à sessão ainda não foi inicializada.

JET_errRecordNotFound

Esse erro será retornado se o índice estiver vazio.

JET_errRestoreInProgress

A operação não pode ser concluída porque uma operação de restauração está em andamento na instância associada à sessão.

JET_errSessionSharingViolation

A mesma sessão não pode ser usada para mais de um thread ao mesmo tempo.

Windows XP: Esse valor retornado é introduzido no Windows XP.

JET_errTermInProgress

A operação não pode ser concluída porque a instância associada à sessão está sendo desligada.

Se essa função for bem-sucedida, o cursor será movido para um registro atual que é uma fração do caminho pelo índice em que a fração é precpos-centriesLT> dividida por precpos-centriesTotal>.

Se essa função falhar, o local do cursor será deixado inalterado.

Comentários

Essa operação move o cursor pela tabela para uma posição no seguinte ponto aproximado: precpos-centriesLT> dividido por precpos-centriesTotal>.

Quando as atualizações estão ocorrendo continuamente na tabela, chamadas subsequentes com o mesmo JET_RECPOS podem mover o cursor para posições diferentes no índice, antes e depois da posição anterior. O isolamento transacional não se aplica ao posicionamento por meio de JET_RECPOS , pois depende das propriedades físicas do índice que não são isoladas da transação.

JET_RECPOS não deve ser usado para descrever um registro dentro de uma tabela ou reposicionar um registro próximo a um registro existente. Em vez disso, os indicadores de um registro existente devem ser recuperados após um JetGotoPosition inicial e, em seguida, usados para reposicionar o mesmo registro.

Requisitos

Requisito Valor

Cliente

Requer Windows Vista, Windows XP ou Windows 2000 Professional.

Servidor

Requer o Windows Server 2008, o Windows Server 2003 ou o Windows 2000 Server.

Cabeçalho

Declarado em Esent.h.

Biblioteca

Use ESENT.lib.

DLL

Requer ESENT.dll.

Consulte Também

JET_COLUMNID
JET_ERR
JET_SESID
JET_TABLEID
JET_RECPOS
JET_SETINFO