База данных Sqlite, которая допускает более 100 аргументов

Я создаю приложение, которое фильтрует список на основе большого набора параметров. В настоящее время я использую оператор sql, построенный на основе выбора пользователя, для создания отфильтрованных результатов. Моя проблема в том, что если пользователь выбирает более 100 параметров в качестве фильтров, sqlite выдает ошибку «невозможно связать». Есть ли способ настроить мою базу данных sql для обработки более 100 аргументов. Я проверил документацию по Android и не вижу способа установить SQLITE_MAX_FUNCTION_ARG, что я и прочитал на этой странице: http://www.sqlite.org/limits.html

http://www.sqlite.org/limits.html также указывает, что может быть жесткое ограничение в 127 аргументов.

Если я не могу настроить свою базу данных для обработки такого количества аргументов, есть ли лучший способ добиться фильтрации на основе этого множества различных параметров?


person dbnicol    schedule 16.07.2013    source источник
comment
Являются ли эти значения целыми числами, числами с плавающей запятой или строками? Какую фильтрацию вы делаете с ними?   -  person CL.    schedule 16.07.2013


Ответы (1)


Так как это ограничение, то вместо длинного запроса можно использовать динамическую фильтрацию, сужая категорию результатов поиска на основе выбранных фильтров один за другим. Таким образом, вам не придется реализовывать длинный запрос с несколькими аргументами, и пользователь все равно сможет фильтровать результаты поиска.

person Salman Khakwani    schedule 16.07.2013
comment
Не могли бы вы привести пример того, что вы подразумеваете под динамической фильтрацией? - person dbnicol; 25.11.2013