Função JetGetCursorInfo
Aplica-se a: Windows | Windows Server
Função JetGetCursorInfo
A função JetGetCursorInfo é usada para determinar se uma atualização do registro atual de um cursor resultará em um conflito de gravação, com base na atualização atual status do registro. É possível que um conflito de gravação seja retornado, mesmo que JetGetCursorInfo retorne JET_errSuccess, pois outra sessão pode atualizar o registro antes que a sessão atual possa atualizar o mesmo registro.
JET_ERR JET_API JetGetCursorInfo(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__out void* pvResult,
__in unsigned long cbMax,
__in unsigned long InfoLevel
);
Parâmetros
sesid
A sessão que será usada para essa chamada.
Tableid
O cursor que será usado para essa chamada.
pvResult
Reservado para uso futuro.
cbMax
Deve ser definido como 0 (zero), caso contrário, não utilizado. Ele está presente para funcionalidades futuras.
InfoLevel
Deve ser definido como 0 (zero), caso contrário, não utilizado. Ele está presente para funcionalidades futuras.
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 |
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. Esse erro só será retornado pelo Windows XP e versões posteriores. |
JET_errInvalidParameter |
CbMax não é 0 (zero) ou InfoLevel não é 0 (zero). |
JET_errNoCurrentRecord |
O cursor não está atualmente em um registro e as informações sobre um registro lógico não podem ser retornadas como resultado. |
JET_errNotInitialized |
Não é possível concluir a operação porque a instância associada à sessão ainda não foi inicializada. |
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 |
A mesma sessão não pode ser usada para mais de um thread ao mesmo tempo. Esse erro 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_errWriteConflict |
O registro atual do cursor foi atualizado por outra sessão e uma atualização desse registro por esta sessão resultará em um conflito de gravação. |
Em caso de êxito, essa operação não tem efeito sobre o local do cursor, mas indica apenas que nenhuma outra sessão atualmente atualizou esse registro.
Em caso de falha, se um código de erro negativo for retornado, não haverá efeitos no cursor ou no banco de dados.
Comentários
Essa operação não afeta o estado do cursor ou dos dados. Ele retorna apenas um código de erro que descreve se uma atualização para o registro atual pela sessão de chamada é conhecida por resultar em um JET_errWriteConflict ou se é desconhecido para retornar JET_errWriteConflict. Se outra sessão já tiver atualizado esse registro para usá-lo, é certo que uma atualização desse registro por esta sessão resultará em um conflito de gravação. Isso será verdadeiro até que esta sessão confirme ou reverta suas transações para o nível de transação 0 (zero). No entanto, se JetGetCursorInfo retornar JET_errSuccess, ainda será possível que outra sessão atualize esse registro antes da sessão atual e, portanto, ainda é possível que uma atualização do registro atual por esta sessão em sua transação atual resulte em um conflito de gravação.
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_ERR
JET_SESID
JET_TABLEID
JetGetLock
JetPrepareUpdate
JetStopService
JetUpdate