Как предотвратить создание временного файла tmp.edb при открытии базы данных ESENT?

Когда я пытаюсь открыть базу данных ESENT, в программе dir создается временный файл "tmp.edb". Я могу изменить путь, используя JET_paramTempPath, но не могу найти, как его отключить.

Можно ли читать БД без создания временных файлов?

Вот мой код:

JetSetSystemParameter(nil, nil, JET_paramDatabasePageSize, iPageSize, nil);
JetSetSystemParameter(nil, nil, JET_paramRecovery, nil, 'Off');
JetCreateInstance(&FInstance, nil);
JetInit(FInstance); //Here file "tmp.edb" is created

JetBeginSession(FInstance, &FSession, nil, nil);
JetAttachDatabase(FSession, FFileName, JET_bitDbReadOnly);
JetOpenDatabase(FSession, FFileName, nil, &FDatabase, JET_bitDbReadOnly);

1 ответ

Невозможно запретить создание временного файла базы данных.

Это фундаментальная концепция работы ESENT, и ее нельзя отключить.

Другие вопросы по тегам