Здравствуйте, гость ( Вход | Регистрация )
lanz | Дата 25.3.2015, 20:56 |
Это файл журнала. Если вы читали ссылки, кторые я прислал то знаете что файл журнала удаляется после успешной транзакции. Вам нужно 1. Начать транзакцию 2. Выполнить коммит Эти два действия гарантируют, что ваши данные записаны в БД на физическом носителе. |
|
STRATEG_lLTY | Дата 25.3.2015, 3:03 |
Что такое транзакция мне известно. Проблема в том, что на конечном устройстве база данных не сохраняется сразу, а только после завершения(правильного) приложения. А по ходу работы программа создаёт файл (название моей базы данных)-(сейчас не вспомню что именно, уточню на работе), например DB-(приписка). Как я думал, это и есть файл транзакций, но мною они в явном виде не включались. |
|
lanz | Дата 23.3.2015, 23:03 |
Цитата Но мне не нужны тразакции, мне надо от них избавиться. Зачем? Цитата Если я вызываю commit он постоянно выдаёт false и ясное дело проблему это не решает. Конечно, если вы не начали транзакцию он вернет false. Здесь описывается что такое транзакция: http://www.tutorialspoint.com/sqlite/sqlite_transactions.htm нам важно свойство Цитата Durability: ensures that the result or effect of a committed transaction persists in case of a system failure. Почитайте еще вот это: https://www.sqlite.org/atomiccommit.html И вот это: https://www.sqlite.org/wal.html |
|
STRATEG_lLTY | Дата 23.3.2015, 22:24 |
Попробуйте использовать transaction() и commit() Но мне не нужны тразакции, мне надо от них избавиться. Если я вызываю commit он постоянно выдаёт false и ясное дело проблему это не решает. |
|
lanz | Дата 6.3.2015, 0:17 |
Попробуйте использовать transaction() и commit() http://qt-project.org/doc/qt-4.8/qsqldatab...tml#transaction |
|
STRATEG_lLTY | Дата 5.3.2015, 21:42 |
Использую QT4 и вот такое подключение к бд
Проблема в следующем, какие бы манипуляции с бд не осуществлялись, файл перезаписывается только после выключения программы мне же необходимо, что бы это происходило сразу, так как устройство будет отключаться путём его обесточивания. Подскажите как это сделать. |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 28.3.2024, 18:50 |