Поделиться через


Функция JetDupSession

Применимо к: Windows | Windows Server

Функция JetDupSession

Функция JetDupSession запускает сеанс, инициализирует и возвращает дескриптор сеанса ESE (JET_SESID). Сеансы управляют всем доступом к базе данных и используются для управления область транзакций. Сеанс можно использовать для запуска, фиксации или прерывания транзакций. Сеанс также используется для присоединения, создания или открытия базы данных. Сеанс используется в качестве контекста для всех операций DDL и DML. Чтобы увеличить параллелизм и параллельный доступ к базе данных, можно начать несколько сеансов.

Примечание Этот API будет действовать всеми способами как JetBeginSession , вызываемого экземпляром переданного сеанса. Эта функция не рекомендуется, рекомендуется Использовать JetBeginSession .

    JET_ERR JET_API JetDupSession(
      __in          JET_SESID sesid,
      __out         JET_SESID* psesid
    );

Параметры

sesid

Сеанс, используемый в качестве источника для дублирования или начала сеанса.

psesid

Указатель на переменную, которую дескриптор сеанса инициализирует при успешном возвращении.

Возвращаемое значение

Эта функция возвращает тип данных JET_ERR с одним из следующих кодов возврата. Дополнительные сведения о возможных ошибках ESE см. в разделах Ошибки подсистемы расширяемого хранилища и Параметры обработки ошибок.

Код возврата

Описание

JET_errSuccess

Операция выполнена успешно.

JET_errClientRequestToStopJetService

Невозможно выполнить операцию, так как все действия экземпляра, связанного с сеансом, прекратились в результате вызова JetStopService.

JET_errInstanceUnavailable

Невозможно выполнить операцию, так как экземпляр, связанный с сеансом, столкнулся с неустранимой ошибкой, требующей отмены доступа ко всем данным для защиты целостности этих данных.

Эта ошибка будет возвращена только в Windows XP и более поздних выпусках.

JET_errInvalidParameter

Один из предоставленных параметров содержал непредвиденное значение или значение, которое не имело смысла в сочетании со значением другого параметра.

JET_errNotInitialized

Невозможно выполнить операцию, так как экземпляр, связанный с сеансом, еще не инициализирован.

JET_errOutOfMemory

Операция завершилась сбоем, так как не удалось выделить память.

JET_errOutOfSessions

Количество сеансов, которые подсистема позволит запустить клиенту, ограничено. Это значение можно изменить с помощью JetSetSystemParameter с константой JET_paramMaxSessions . По умолчанию используется 16 сеансов. Дополнительные сведения о JET_paramMaxSessions см. в разделе Системные параметры.

JET_errRestoreInProgress

Невозможно выполнить операцию, так как операция восстановления выполняется в экземпляре, связанном с сеансом.

JET_errTermInProgress

Невозможно завершить операцию, так как экземпляр, связанный с сеансом, завершает работу.

При успешном выполнении дескриптор сеанса инициализируется и может использоваться для операций с базой данных.

При сбое отсутствуют доступные сеансы или не удалось инициализировать новый сеанс.

Требования

Требование Значение

Клиент

Требуется Windows Vista, Windows XP или Windows 2000 Professional.

Сервер

Требуется Windows Server 2008, Windows Server 2003 или Windows 2000 Server.

Верхняя часть

Объявлено в Esent.h.

Библиотека

Используйте ESENT.lib.

DLL

Требуется ESENT.dll.

См. также:

JET_SESID
JetBeginSession
JetSetSystemParameter
JetStopService
Системные параметры