JetGetRecordSize 함수
적용 대상: Windows | Windows Server
JetGetRecordSize 함수
JetGetRecordSize 함수는 원하는 위치에서 레코드 크기 정보를 검색합니다.
Windows Vista: JetGetRecordSize 는 Windows Vista에 도입되었습니다.
JET_ERR JET_API JetGetRecordSize(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__out JET_RECSIZE* precsize,
__in const JET_GRBIT grbit
);
매개 변수
sesid
API 호출에 사용할 데이터베이스 세션 컨텍스트를 식별합니다.
tableid
API 호출에 사용할 테이블 또는 커서를 식별합니다. 커서를 레코드에 배치하거나 업데이트를 준비해야 합니다.
precsize
JET_RECSIZE 구조체의 출력 버퍼에 대한 포인터입니다.
grbit
다음 값 중 하나 이상입니다.
값 |
의미 |
---|---|
JET_bitRecordSizeInCopyBuffer |
그러면 업데이트를 위해 준비된 복사 버퍼에 있는 레코드의 크기를 검색합니다. 그렇지 않으면 tableid 또는 커서를 레코드에 배치해야 하며 해당 레코드가 사용됩니다. |
JET_bitRecordSizeRunningTotal |
이 비트를 지정하면 콘텐츠를 채우기 전에 JET_RECSIZE 0이 되지 않으므로 방문하거나 업데이트된 여러 레코드에 대한 통계의 누적으로 효과적으로 작동합니다. |
JET_bitRecordSizeLocal |
이로 인해 API는 기본이 아닌 Long 값을 무시합니다. 예를 들어 페이지의 로컬 레코드만 사용됩니다. |
반환 값
이 함수는 다음 반환 코드 중 하나를 사용하여 JET_ERR 데이터 형식을 반환합니다. 가능한 ESE 오류에 대한 자세한 내용은 확장 가능한 스토리지 엔진 오류 및 오류 처리 매개 변수를 참조하세요.
반환 코드 |
설명 |
---|---|
JET_errSuccess |
작업이 성공적으로 완료되었습니다. |
JET_errInvalidGrbit |
요청된 옵션 중 하나가 잘못되었거나 구현되지 않았습니다. 이 오류는 잘못된 grbit가 지정되면 JetGetRecordSize 함수에서 반환됩니다. |
JET_errNotInitialized |
세션과 연결된 instance 초기화되지 않았기 때문에 작업을 완료할 수 없습니다. |
JET_errClientRequestToStopJetService |
JetStopService 호출로 인해 세션과 연결된 instance 모든 작업이 중단되었으므로 작업을 완료할 수 없습니다. |
JET_errInstanceUnavailable |
세션과 연결된 instance 해당 데이터의 무결성을 보호하기 위해 모든 데이터에 대한 액세스를 해지해야 하는 심각한 오류가 발생하여 작업을 완료할 수 없습니다. Windows XP: JET_errInstanceUnavailable Windows XP 이상 릴리스에서만 반환됩니다. |
JET_errTermInProgress |
세션과 연결된 instance 종료 중이므로 작업을 완료할 수 없습니다. |
JET_errRestoreInProgress |
세션과 연결된 instance 복원 작업이 진행 중이므로 작업을 완료할 수 없습니다. |
JET_errSessionSharingViolation |
둘 이상의 스레드에서 동일한 세션을 동시에 사용하는 것은 불법입니다. Windows XP: JET_errInstanceUnavailable Windows XP 이상 릴리스에서만 반환됩니다. |
JET_errNoCurrentRecord |
커서가 잘못 배치된 경우 이 문제가 발생할 수 있습니다. |
JET_errRecordDeleted |
커서가 트랜잭션에 배치되지 않은 경우 다른 스레드가 이 세션 아래에서 레코드를 삭제하는 경우 이 문제가 발생할 수 있습니다. |
JET_errInvalidParameter |
NULLprecsize가 전달된 경우 이 값을 반환할 수 있습니다. |
설명
JET_RECSIZE cbOverhead 필드에 누적된 키의 크기는 JET_bitRecordSizeInCopyBuffer 영향을 받습니다. 이 비트를 지정하면 cbOverhead 필드에 누적된 키 크기가 전체 키 크기입니다. 이 비트를 사용하지 않으면 누적된 키 크기에는 키 접두사 압축으로 인해 저장된 크기가 포함되지 않습니다.
요구 사항
요구 사항 | 값 |
---|---|
클라이언트 |
Windows Vista가 필요합니다. |
서버 |
Windows Server 2008이 필요합니다. |
머리글 |
Esent.h에서 선언되었습니다. |
라이브러리 |
ESENT.lib를 사용합니다. |
DLL |
ESENT.dll 필요합니다. |