JetSetLS 함수

적용 대상: Windows | Windows Server

JetSetLS 함수

JetSetLS 함수를 사용하면 애플리케이션이 Local Storage라는 컨텍스트 핸들을 커서 또는 해당 커서와 연결된 테이블과 연결할 수 있습니다. 이 컨텍스트 핸들은 애플리케이션에서 커서 또는 테이블과 연결된 보조 데이터를 저장하는 데 사용할 수 있습니다. 컨텍스트 핸들을 해제해야 하는 경우 애플리케이션은 나중에 런타임 콜백을 사용하여 알림을 받습니다. 이렇게 하면 동적으로 할당된 상태를 커서 또는 테이블과 연결할 수 있습니다.

Windows XP:JetSetLS 는 Windows XP에 도입되었습니다.

    JET_ERR JET_API JetSetLS(
      __in          JET_SESID sesid,
      __in          JET_TABLEID tableid,
      __in          JET_LS ls,
      __in          JET_GRBIT grbit
    );

매개 변수

sesid

이 호출에 사용할 세션입니다.

tableid

이 호출에 사용할 커서입니다.

ls

커서 또는 테이블과 연결할 컨텍스트 핸들입니다.

JET_bitLSReset 지정하면 이 매개 변수의 실제 값이 무시되고 JET_LSNil 사용됩니다.

grbit

다음 중 0개 이상을 포함하는 이 호출에 사용할 옵션이 포함된 비트 그룹입니다.

의미

JET_bitLSCursor

이 옵션은 컨텍스트 핸들이 지정된 커서와 연결되어야 했음을 나타냅니다.

JET_bitLSCursor 또는 JET_bitLSTable 지정되지 않으면 JET_bitLSCursor 추정됩니다.

이 옵션을 JET_bitLSTable 사용하는 것은 불법입니다. 이 작업을 시도하면 JET_errInvalidgrbit 작업이 실패합니다.

JET_bitLSReset

이 옵션은 지정된 컨텍스트 핸들을 무시해야 하며 선택한 개체의 컨텍스트 핸들을 JET_LSNil 다시 설정해야 했음을 나타냅니다.

이 작업을 수행해도 선택한 개체에 대한 컨텍스트 핸들의 이전 값을 정리하는 콜백이 발생하지 않습니다. 이전 컨텍스트 핸들의 적절한 정리는 JET_bitLSReset JetGetLS를 사용하여 수행할 수 있습니다. 자세한 내용은 JetGetLS 를 참조하세요.

JET_bitLSTable

이 옵션은 컨텍스트 핸들이 지정된 커서와 연결된 테이블과 연결되어야 했음을 나타냅니다.

이 옵션을 JET_bitLSCursor 사용하는 것은 불법입니다. 이 작업을 시도하면 JET_errInvalidgrbit 작업이 실패합니다.

반환 값

이 함수는 다음 반환 코드 중 하나를 사용하여 JET_ERR 데이터 형식을 반환합니다. 가능한 ESE 오류에 대한 자세한 내용은 확장 가능한 스토리지 엔진 오류오류 처리 매개 변수를 참조하세요.

반환 코드

설명

JET_errSuccess

작업이 성공적으로 완료되었습니다.

JET_errClientRequestToStopJetService

JetStopService 호출로 인해 세션과 연결된 instance 모든 작업이 중단되었으므로 작업을 완료할 수 없습니다.

JET_errInvalidgrbit

요청된 옵션 중 하나가 잘못되었거나, 잘못 사용되었거나, 구현되지 않았습니다. 이는 JET_bitLSCursor 및 JET_bitLSTable 모두 지정된 경우 JetSetLS 에 대해 발생할 수 있습니다.

JET_errInstanceUnavailable

세션과 연결된 instance 해당 데이터의 무결성을 보호하기 위해 모든 데이터에 대한 액세스를 해지해야 하는 심각한 오류가 발생하여 작업을 완료할 수 없습니다. 이 오류는 Windows XP 이상 릴리스에서만 반환됩니다.

JET_errLSAlreadySet

지정된 컨텍스트 핸들은 이미 연결된 컨텍스트 핸들이 있으므로 요청된 개체와 연결할 수 없습니다.

JET_errLSCallbackNotSpecified

런타임 콜백이 세션과 연결된 instance 대해 구성되지 않았기 때문에 지정된 컨텍스트 핸들을 요청된 개체와 연결할 수 없습니다.

JET_errNotInitialized

세션과 연결된 instance 아직 초기화되지 않았기 때문에 작업을 완료할 수 없습니다.

JET_errRestoreInProgress

세션과 연결된 instance 복원 작업이 진행 중이므로 작업을 완료할 수 없습니다.

JET_errTermInProgress

세션과 연결된 instance 종료 중이므로 작업을 완료할 수 없습니다.

성공하면 지정된 컨텍스트 핸들이 요청된 개체와 성공적으로 연결되었습니다. 데이터베이스 상태는 변경되지 않습니다.

실패 시 요청된 개체의 상태가 변경되지 않았습니다. 데이터베이스 상태는 변경되지 않습니다.

설명

커서 또는 테이블에 대한 로컬 스토리지는 휘발성 캐시로 표시되어야 합니다. 애플리케이션은 먼저 JetGetLS를 사용하여 컨텍스트 핸들을 검색하려고 시도해야 합니다. 값이 설정되지 않은 경우(즉, JET_LSNil) 애플리케이션은 새 컨텍스트를 만들고 JetSetLS를 사용하여 캐시에 로드해야 합니다. 애플리케이션은 JET_bitLSReset JetGetLS 호출을 사용하여 캐시를 제거할 수 있습니다. 데이터베이스 엔진이 캐시를 제거하면 런타임 콜백이 생성되어 애플리케이션에서 해당 컨텍스트를 정리할 수 있습니다. 콜백 형식은 커서와 연결된 컨텍스트 핸들에 대해 JET_cbtypFreeCursorLS 테이블과 연결된 컨텍스트 핸들의 경우 JET_cbtypFreeTableLS. 두 경우 모두 컨텍스트 핸들은 pvArg1로 전달됩니다. 자세한 내용은 JET_CALLBACK 참조하세요.

로컬 스토리지를 사용하려면 먼저 지정된 세션과 연결된 instance 대해 런타임 콜백을 올바르게 구성해야 합니다. 이 콜백은 JET_paramRuntimeCallback JetSetSystemParameter를 사용하여 설정할 수 있습니다. 자세한 내용은 JetSetSystemParameter 및 시스템 매개 변수의 JET_paramRuntimeCallback 참조하세요.

요구 사항

요구 사항

클라이언트

Windows Vista 또는 Windows XP가 필요합니다.

서버

Windows Server 2008 또는 Windows Server 2003이 필요합니다.

머리글

Esent.h에서 선언되었습니다.

라이브러리

ESENT.lib를 사용합니다.

DLL

ESENT.dll 필요합니다.

참고 항목

JET_CALLBACK
JET_ERR
JET_GRBIT
JET_LS
JET_SESID
JET_TABLEID
JetGetLS
JetSetSystemParameter
시스템 매개 변수