QSqlQuery и работа с большим кол-вом данных, тормоза записи |
Здравствуйте, гость ( Вход | Регистрация )
QSqlQuery и работа с большим кол-вом данных, тормоза записи |
JuryS1806 |
28.6.2010, 23:34
Сообщение
#1
|
Студент Группа: Участник Сообщений: 93 Регистрация: 21.10.2009 Из: Нижний Новгород Пользователь №: 1168 Спасибо сказали: 9 раз(а) Репутация: 0 |
Доброго времени суток!
Имею следующий код при работе с SQLITE:
Все работает, все здорово, но только после выполнения пары тысяч строк, происходит бурная работа на жестком диске. Т.е. насколько я понимаю, при выполнении любого SQL запроса, qt записывает базу данных на диск. А в связи с тем что таких запросов несколько тысяч то и записывает он множество раз. Так вот, хотел спросить, что в этой ситуации можно улучшить. Записать файл сначала в память, а потом уже на диск, как вариант создать раздел в памяти или все таки есть более простой способ ??? Спасибо заранее за помощь ! |
|
|
Алексей1153 |
30.6.2010, 6:26
Сообщение
#2
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
Единственный минус, тормоза при использовании QTableWidget медленно перелистывает, все окна плавают, как будто он грузит машину. Где-то раньше читал, что его ускоряют при отключении каких-то примечек.... Но не могу ничего пока придумать Я в таких случаях делал таблицу на экране всего в несколько десятков строк (точнее - ровно столько, сколько видно на экране). Это такое окно для огромной "мысленной" таблицы. Затем, имеется переменная: хранит, какая строка из "мысленной" таблицы должна быть вверху окна. Также, имеется кеш (обновляемый по времени) гда хранятся считанные из базы строки. При обновлении кеша производится удаление давно не используемых данных. Детали мог сейчас не все вспомнить, но суть такая А для возможности обратной связи в одно из полей таблицы (по возможности невидимое) нужно печатать уникальный ключ из базы Сообщение отредактировал Алексей1153 - 30.6.2010, 6:29 |
|
|
Текстовая версия | Сейчас: 2.12.2024, 13:30 |