JetGotoPosition 함수
적용 대상: Windows | Windows Server
JetGotoPosition 함수
JetGotoPosition 함수는 커서를 현재 인덱스를 통과하는 방법의 일부인 새 위치로 이동합니다. 분수는 다음과 거의 같습니다.
precpos-centriesLT>/precpos-centriesTotal>
이 작업은 사용자가 데이터 집합을 통해 부분적으로 시작하는 데이터를 표시하려고 할 때 수신되는 사용자 스크롤 상자 입력에 대한 응답으로 수행됩니다.
JET_ERR JET_API JetGotoPosition(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__in JET_RECPOS* precpos
);
매개 변수
sesid
이 호출에 사용할 세션입니다.
tableid
이 호출에 사용할 커서입니다.
precpos
현재 인덱스에서 커서를 배치하는 데 사용할 분수에 대한 설명입니다.
반환 값
이 함수는 다음 반환 코드 중 하나를 사용하여 JET_ERR 데이터 형식을 반환합니다. 가능한 ESE 오류에 대한 자세한 내용은 확장 가능한 스토리지 엔진 오류 및 오류 처리 매개 변수를 참조하세요.
반환 코드 |
설명 |
---|---|
JET_errSuccess |
작업이 성공적으로 완료되었습니다. |
JET_errClientRequestToStopJetService |
JetStopService 호출로 인해 세션과 연결된 instance 모든 작업이 중단되었기 때문에 작업을 완료할 수 없습니다. |
JET_errInstanceUnavailable |
세션과 연결된 instance 해당 데이터의 무결성을 보호하기 위해 모든 데이터에 대한 액세스를 취소해야 하는 심각한 오류가 발생하여 작업을 완료할 수 없습니다. Windows XP: 이 반환 값은 Windows XP에 도입되었습니다. |
JET_errInvalidParameter |
지정된 precpos-cbStruct>는 JET_RECPOS 구조에 유효한 크기가 아니거나 precpos-centriesLT가 precpos-centriesTotal>>보다 큽니다. |
JET_errNotInitialized |
세션과 연결된 instance 아직 초기화되지 않았기 때문에 작업을 완료할 수 없습니다. |
JET_errRecordNotFound |
인덱스가 비어 있으면 이 오류가 반환됩니다. |
JET_errRestoreInProgress |
세션과 연결된 instance 복원 작업이 진행 중이므로 작업을 완료할 수 없습니다. |
JET_errSessionSharingViolation |
동시에 둘 이상의 스레드에 동일한 세션을 사용할 수 없습니다. Windows XP: 이 반환 값은 Windows XP에 도입되었습니다. |
JET_errTermInProgress |
세션과 연결된 instance 종료 중이므로 작업을 완료할 수 없습니다. |
이 함수가 성공하면 소수 자릿수가 precpos-centriesLT를 precpos-centriesTotal>로 나눈 인덱스를 통과하는 방식의 일부인> 현재 레코드로 커서가 이동됩니다.
이 함수가 실패하면 커서 위치는 변경되지 않은 상태로 유지됩니다.
설명
이 작업은 테이블을 통해 커서를 대략적인 지점인 precpos-centriesLT를 precpos-centriesTotal>로 나눈 위치로> 이동합니다.
테이블에서 업데이트가 지속적으로 발생하는 경우 동일한 JET_RECPOS 있는 후속 호출은 이전 위치 앞과 뒤에 있는 인덱스의 다른 위치로 커서를 이동할 수 있습니다. 트랜잭션 격리는 트랜잭션 격리되지 않은 인덱스의 물리적 속성에 따라 달라지기 때문에 JET_RECPOS 통해 위치 지정에는 적용되지 않습니다.
JET_RECPOS 테이블 내의 레코드를 설명하거나 기존 레코드에 가까운 레코드의 위치를 변경하는 데 사용하면 안 됩니다. 대신 기존 레코드에 대한 책갈피는 초기 JetGotoPosition 후에 검색한 다음 동일한 레코드의 위치를 변경하는 데 사용해야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
클라이언트 |
Windows Vista, Windows XP 또는 Windows 2000 Professional이 필요합니다. |
서버 |
Windows Server 2008, Windows Server 2003 또는 Windows 2000 Server가 필요합니다. |
머리글 |
Esent.h에 선언되었습니다. |
라이브러리 |
ESENT.lib를 사용합니다. |
DLL |
ESENT.dll 필요합니다. |
참고 항목
JET_COLUMNID
JET_ERR
JET_SESID
JET_TABLEID
JET_RECPOS
JET_SETINFO