2026-10-29 22:07:36 +03:00 | | | //+------------------------------------------------------------------+
|
| | | //| OpenDatabase: открытие базы и настройка соединения |
|
| | | //+------------------------------------------------------------------+
|
2026-10-28 23:43:05 +03:00 | | | bool OpenDatabase()
|
| | | {
|
| | | g_db = DatabaseOpen(InpDatabase,
|
| | | DATABASE_OPEN_READWRITE
|
| | | | DATABASE_OPEN_CREATE
|
| | | | DATABASE_OPEN_COMMON);
|
| | |
|
| | | if(g_db == INVALID_HANDLE)
|
| | | {
|
| | | PrintFormat("Не удалось открыть базу '%s', код ошибки: %d",
|
| | | InpDatabase, GetLastError());
|
| | | return false;
|
| | | }
|
| | |
|
| | | if(!DatabaseExecute(g_db, StringFormat("PRAGMA busy_timeout=%d", InpBusyTimeout)))
|
| | | PrintFormat("Не удалось задать busy_timeout, код ошибки: %d", GetLastError());
|
| | |
|
| | | if(!DatabaseExecute(g_db, "PRAGMA journal_mode=WAL"))
|
| | | PrintFormat("Не удалось включить режим WAL, код ошибки: %d", GetLastError());
|
| | |
|
| | | if(!EnsureSchema(g_db))
|
| | | {
|
| | | DatabaseClose(g_db);
|
| | | g_db = INVALID_HANDLE;
|
| | | return false;
|
| | | }
|
| | |
|
| | | return true;
|
| | | }
|