[WLX] SQLite Viewer
Select messages from
# through # FAQ
[/[Print]\]
Goto page Previous  1, 2, 3, 4, 5, 6  :| |:
Total Commander -> Плагины Total Commander

#76:  Author: Destiny PostPosted: Fri Oct 29, 2021 21:01
    —
ProgMan13
А отчего после использования плагина над файлом рядом возникают 2 файла с тем же именем (и даже с расширением!), но с окончанием "-shm" и "-wal". Явно они нужны были для работоспособности открытия этого формата, но после закрытия плагина им не место на диске. Отчего они не автоудаляются?

#77:  Author: little-brother PostPosted: Sat Oct 30, 2021 02:12
    —
Это файлы журнала (изменений в базе), которые используются при работе базы данных, а также для восстановления после внезапного завершения работы приложения посредине транзакции. У вас база данных работает в режиме WAL, т.е. с возможностью, когда можно писать и читать базу в нескольких потоков параллельно (как в больших СУБД).
Переведя базу в режим по умолчанию командой
Code:
pragma journal_mode = delete

после прекращения работы файл журнала будет удален автоматически.

#78:  Author: Destiny PostPosted: Sat Oct 30, 2021 12:50
    —
little-brother wrote:
Переведя базу в режим по умолчанию командой
Код:
pragma journal_mode = delete

после прекращения работы файл журнала будет удален автоматически.

Приветствую! где-то мы уже пересекались)))
По ответу: если бы это единоразово где-то выставлялось галочкой в общем Setup'e - было бы очень приятно и полезно. А пока что я это вижу как действие над каждой открываемой базой... Да мне проще будет эти файлы удалять, чем эту команду каждый раз вводить.

#79:  Author: little-brother PostPosted: Sat Oct 30, 2021 15:14
    —
Дело в том, что данная pragma хранится в базе, в отличии от многих других, т.е. плагин конечно может подключиться к базе, перевести ее в режим delete, а потом при отключении в режим wal, но это не очень хорошо, т.к. при этом меняется файл базы.
Удалять файлы плагин то ж не должен, т.к. если у вас они были до этого, то возможно в них содержится информация, которая не была перенесена в основной файл базы.

Посмотрел свой плагин - он не создает данные файлы. Похоже SQLiteViewer открывает базу в режиме не только чтение (SQLITE_OPEN_READONLY), а в режиме по умолчанию (чтение-запись), потому файлы журнала и создаются.

#80:  Author: Destiny PostPosted: Sat Oct 30, 2021 23:02
    —
little-brother wrote:
Посмотрел свой плагин - он не создает данные файлы

Смотрел и ваш - те же файлы так же рядом((((
но т.к. в этом больше нужных операций и настроек , то выбрал покамест его. Но вот ток проблему бы с этими файлами решить кардинально.

#81:  Author: ProgMan13 PostPosted: Mon Nov 01, 2021 01:28
    —
Плагин по умолчанию открывает файлы в режиме только для чтения (SQLITE_OPEN_READONLY). Раньше просто выполнялась "'pragma query_only=true". Это чтобы ничего случайно не изменить. Но во втором случае можно выполнять всякие (в том числе "вредные") прагмы.
Базы "в режиме" WAL всегда должны создавать два файла журнала. Но при открытии только для чтения файлы создаются, но не удаляются.

Для изменения режима открытия баз в ini плагина нужно дописать
DatabaseReadOnly=0



Total Commander -> Плагины Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page Previous  1, 2, 3, 4, 5, 6  :| |:
Page 6 of 6

Powered by phpBB © 2001, 2005 phpBB Group