Запросы Qt SQLite SELECT очень медленные на Symbian - PullRequest
0 голосов
/ 20 мая 2011

Я пишу приложение с Qt для Symbian и использую множество маленьких запросов SQLite для извлечения данных из базы данных, которую я создал.

Проблема в том, что для выполнения некоторых запросов требуется больше секунды. Кажется, что время выполнения является случайным, потому что иногда простые запросы SELECT выполняются со скоростью 1 или 2 миллисекунды, а иногда это занимает более 1000 миллисекунд.

Обычно я выполняю много таких маленьких запросов подряд.

Запросы просты:

SELECT field FROM table

Есть ли здесь какая-то проблема одновременного доступа на работе или что-то подобное?

С наилучшими пожеланиями

1 Ответ

1 голос
/ 20 мая 2011

Есть ли здесь какая-то проблема одновременного доступа на работе или что-то подобное?

Насколько я знаю, sqlite использует целую базовую блокировку вместо блокировок таблицы, так что да, это можетбудь той проблемой.Если вы пишете в базу не так часто, попробуйте добавить индексы в столбцы, из которых вы выбираете, и используйте предложения where, чтобы минимизировать количество возвращаемых строк.Например, создание 20-30 тысяч QVariants в режиме отладки может занять много времени ...

...