Я использую execSql для обработки оператора INSERT, и он работал без ошибок на всех версиях Android, предшествующих сотовой структуре. В Honeycomb и позже приложение просто зависает. Он не возвращает исключение или какую-либо ошибку.
Оператор INSERT использует составной оператор SELECT с 3 UNION для предоставления значений.
Кто-нибудь еще сталкивался с этим?
Редактировать: Кажется, что только последний оператор SELECT вызывает зависание.
insert into RESULTS (Int_ID, SubjID, SubjName, SubjCompID, SubjCompName, ObjID, ObjName, ObjCompID, ObjCompName, IntType, MechID, Direction, Effect, Strength, Comment, Sort1, Sort2 )
SELECT Int_ID, subdc.ID_comp as SubjID, subdc.Name_comp as SubjName, ID_subject as SubjCompID, subcompd.Name as SubjCompName, objdc.ID_Compound as ObjID, objdc.Name_Compound as ObjName, ID_object as ObjCompID, objcompd.Name as ObjCompName, IntType, MechID, Direction, Effect,Strength,Comment, (subdc.ID_compound + objdc.ID_Compound)as Sort1, (ID_subject + ID_object)as Sort2
FROM Int
INNER JOIN t_Components subdc ON ID_subject = subdc.ID_Component
INNER JOIN t_Components objdc ON ID_object = objdc.ID_Component
INNER JOIN Comps subcompd ON ID_subject = subcompd.DrugID
INNER JOIN Comps objcompd ON ID_object = objcompd.DrugID
WHERE subdc.ID_compound <> objdc.ID_Compound