Estoy frente a un problema durante el uso de SQLite en iOS 5. Soy registros de ir a buscar a partir de dos tablas: una en otra receta & en los ingredientes de un Menu.dbproblema de rendimiento en iOS 5 para SQLite
De Tabla de recetas Obtengo todo el registro y uno recipeid
sobre esa base, obtengo registros de la tabla de ingredientes. No se necesita tiempo para recuperar el registro cuando se ejecuta en iOS 4.2, pero cuando ejecuto en iOS 5, lleva tiempo recuperar los registros. Ver el siguiente código:
NSString *query = [NSString stringWithFormat:@"select id from Recipes"];
sqlite3_stmt *selectstmt;
if(sqlite3_prepare_v2(database, [query UTF8String], -1, &selectstmt, NULL) == SQLITE_OK) {
while(sqlite3_step(selectstmt) == SQLITE_ROW) {
rcp.recipeID = sqlite3_column_int(selectstmt, 0);
NSString *sql = [NSString stringWithFormat:@"select Name from Ingredients where recipeId = %d",rcp.recipeID];
sqlite3_stmt *stmt2;
if(sqlite3_prepare_v2(database, [sql UTF8String], -1, &stmt2, NULL) == SQLITE_OK) {
while(sqlite3_step(stmt2) == SQLITE_ROW) {}
}
}
}
¿Por qué es este problema viene en iOS 5.0, el mismo código se ejecuta correctamente en iOS 4.0, 4.2?
Lo sé, el código que he escrito es el correcto, quiero saber la razón exacta detrás de este problema de rendimiento en iOS 5.0 para Sqlite bcoz mi aplicación está totalmente construida alrededor de la base de datos.
En el proyecto se crean archivos 2 .sql o no –
Sospecho que hay una diferencia en la base de datos. (¿Ha verificado que obtiene los mismos resultados en ambos casos?) –
Tengo un Menu.db y en eso tengo dos tablas. – Rupesh