Недавно я обновил свой Nexus One до Froyo (2.2), и я заметил несколько существенно отличающееся поведение с SQLite.Android 2.2 (Froyo) SQLite не хватает некоторых функций функции IN?
Например, я использовал подзапрос (возвращающие данные строки) как часть предложения IN, и часть подзапроса больше не функционирует корректно. Я приложил запрос пример SQL работы с базой данных контактов ниже (прямой запрос, показанный только для иллюстрации):
SELECT _id FROM data WHERE display_name IN (SELECT display_name FROM contacts);
До Android 2.1 это не было проблемой. После обновления, однако, это возвращает пустой набор записей, если я не запускаю подзапрос отдельно, окружая каждое из полученных значений в одинарных кавычках и добавляя эти значения непосредственно в предложение IN.
Я заметил эту потерю функциональности в нескольких приложениях, над которыми я работаю, но должен заметить, что она работает, когда результаты будут численными, а не строковыми.
Неужели кто-нибудь еще сталкивается с этой проблемой?
Спасибо, это выглядит полезно! К сожалению, мне придется изменить подзапрос, так как код слияния андроида изменился сгенерированным именем display_name. Это должно стать стимулом для моих других проектов, хотя :) –