In my development of an ipad applicacion, I need a database with 5 tables, but, I don't know why in my code, only execute 1 statement and don't return any error:
const char *sqlStatement = "CREATE TABLE IF NOT EXISTS CATEGORIAS (ID INTEGER PRIMARY KEY, NOMBRE TEXT)";
char *error;
if(sqlite3_exec(dieneDB, sqlStatement, NULL, NULL, &error) == SQLITE_OK){
**sqlStatement = "CREATE TABLE IF NOT EXIST SUBCATEGORIAS (ID INTEGER PRIMARY KEY, ID_CATEGORIA INTEGER, NOMBRE TEXT)";**
if(sqlite3_exec(dieneDB, sqlStatement, NULL, NULL, &error) == SQLITE_OK){
sqlStatement = "CREATE TABLE IF NOT EXIST FORMATOS (ID INTEGER PRIMARY KEY, NOMBRE TEXT)";
if(sqlite3_exec(dieneDB, sqlStatement, NULL, NULL, &error) == SQLITE_OK){
sqlStatement = "CREATE TABLE IF NOT EXIST BEBIDAS (ID INTEGER PRIMARY KEY, ID_CATEGORIA INTEGER, ID_SUBCATEGORIA INTEGER, NOMBRE TEXT, DESCRIPCION TEXT, RUTA_IMAGEN TEXT)";
if(sqlite3_exec(dieneDB, sqlStatement, NULL, NULL, &error) == SQLITE_OK){
sqlStatement = "CREATE TABLE IF NOT EXIST BEBIDASFORMATOS (ID INTEGER PRIMARY KEY, ID_BEBIDA INTEGER, ID_FORMATO INTEGER)";
if(sqlite3_exec(dieneDB, sqlStatement, NULL, NULL, &error) == SQLITE_OK){
NSLog(@"All tables are created");
sqlite3_close(dieneDB);
[self loadData];
}
}
}
}
}else{
NSLog(@"Unable to create some table %s", error);
}
}else{
NSLog(@"Database Exists Already");
[self clearData]
}
}else{
NSLog(@"Error opening database");
}
}
It crash in the second sqlStatement and go to the}else{
NSLog(@"Unable to create some table %s", error);
But not log anythink