Всем привет!
Седня обнаружил такую вещь: при изменении существющих данных в базе sqlite (неважно в своей программе, или через sqlbrowser), сохраняю (через submit), потом таблица обновляется, но все данные что я вносил - теряются и я вижу исходную таблицу (базу)... Как с этим можно побороться? В тоже время, если добавить строку и внести какие-то данные - все ок. Если потом после сохранения попытаться их изменить - ни фига... Не работает также и удаление строк... В чем может быть проблема? Может быть из-за того что в одном файле несколько таблиц (штук 7) и некоторые из них большие (одна до 24к записей)?
Спасибо!
через sqlbrowser ты как изменяешь, прямо в таблице или через запрос?
прямо в таблице
От количества таблиц не зависит 100%. У меня было 15 и ничего.
КОгда у меня возникла проблема "сбрасывания" дынных, похожая на эту (например, программа аварийно завершалась, не закрыв корректно соединение), решил её запретом журналирования, т.е. выполнением:
PRAGMA journal_mode = off;
Эту штуку надо выполнять при каждом соединении с базой (запуск программы, открытие sqlbrowser), т.к. она сбрасывается на значение по умолчанию.
Так же до кучи делаю:
PRAGMA synchronous = off;
А ещё почитай вот тут:
http://web.utk.edu/~jplyon/sqlite/SQLite_optimization_FAQ.html
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)