Функция JetOpenDatabase
Применимо к: Windows | Windows Server
Функция JetOpenDatabase
Функция JetOpenDatabase открывает ранее присоединенную базу данных с помощью функций JetAttachDatabase или JetAttachDatabase2 для использования с сеансом базы данных. Эту функцию можно вызывать несколько раз для одной базы данных.
JET_ERR JET_API JetOpenDatabase(
__in JET_SESID sesid,
__in const tchar* szFilename,
__in_opt const tchar* szConnect,
__out JET_DBID* pdbid,
__in JET_GRBIT grbit
);
Параметры
sesid
Контекст сеанса базы данных, используемый для вызова API.
szFilename
Имя открываемой базы данных.
szConnect
Зарезервировано. задано значение NULL.
pdbid
Указатель на буфер, который при успешном вызове содержит идентификатор базы данных. Если вызов завершается ошибкой, значение не определено.
grbit
Группа битов, задающая ноль или более следующих параметров.
Значение |
Значение |
---|---|
JET_bitDbExclusive |
Разрешает присоединение базы данных только к одному сеансу. Обычно базу данных можно открыть в нескольких сеансах. |
JET_bitDbReadOnly |
Предотвращает изменения базы данных. |
Возвращаемое значение
Эта функция возвращает тип данных JET_ERR с одним из следующих кодов возврата. Дополнительные сведения о возможных ошибках ESE см. в разделах Ошибки подсистемы расширяемого хранилища и Параметры обработки ошибок.
Код возврата |
Описание |
---|---|
JET_errSuccess |
Операция выполнена успешно. |
JET_errDatabaseInUse |
Был запрошен монопольный доступ, но не может быть предоставлен. |
JET_errDatabaseInvalidPath |
В szFilename указан недопустимый путь. Значение szFilename должно быть не равно NULL и ссылаться на допустимый файл. |
JET_errDatabaseLocked |
Другой сеанс уже открыл базу данных исключительно (с помощью JET_bitDbExclusive). |
JET_errDatabaseNotFound |
База данных ранее не была подключена (см. JetAttachDatabase). |
JET_errInvalidDatabase |
Предпринята попытка открыть файл, который не является допустимым файлом базы данных. |
JET_errOneDatabasePerSession |
Предпринята попытка открыть несколько баз данных, и JET_paramOneDatabasePerSession задано. Дополнительные сведения см. в разделе Системные параметры. |
JET_wrnFileOpenReadOnly |
Файл был присоединен только для чтения, но JetOpenDatabase не прошел JET_bitDbReadOnly. База данных по-прежнему открыта с доступом только для чтения. |
Требования
Требование | Значение |
---|---|
Клиент |
Требуется Windows Vista, Windows XP или Windows 2000 Профессиональная. |
Сервер |
Требуется Windows Server 2008, Windows Server 2003 или Windows 2000 Server. |
Верхняя часть |
Объявлено в Esent.h. |
Библиотека |
Используйте ESENT.lib. |
DLL |
Требуется ESENT.dll. |
Юникод |
Реализовано как JetOpenDatabaseW (Юникод) и JetOpenDatabaseA (ANSI). |
См. также:
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetAttachDatabase
JetAttachDatabase2
JetSetSystemParameter
Системные параметры