저는 Ios 개발자이고 SQLite db 's 2 개를 연결하는 데 문제가 있습니다. 실행할 때 우리는이 오류를 얻고있다 :iOS 오류 2 SQLite 데이터베이스를 연결하려고합니다
Error calling sqlite3_step (1: SQL logic error or missing database) SQLITE_ERROR
2012-06-19 11:10:19.658 °°°°°°°[453:707] DB Query: ATTACH DATABASE '/var/mobile/Applications/A05034A8-F5AF-45AA-B520-DF2BBEBB800B/Documents/Meals.db' AS mealDB
2012-06-19 11:10:19.672 °°°°°°°[453:707] Err 1: no such table: Meal
2012-06-19 11:10:19.680 °°°°°°°[453:707] Error calling sqlite3_step (1: SQL logic error or missing database) SQLITE_ERROR
2012-06-19 11:10:19.684 °°°°°°°[453:707] DB Query: ATTACH DATABASE '/var/mobile/Applications/A05034A8-F5AF-45AA-B520-DF2BBEBB800B/Documents/Meals.db' AS mealDB
2012-06-19 11:10:19.693 °°°°°°°[453:707] Err 1: no such table: MealItem
2012-06-19 11:10:19.698 °°°°°°°[453:707] ERREUR
을 우리가 데이터를 수집하기 위해 노력하고 부착 후. 그는 우리가 찾고있는 테이블을 찾지 못하고 있습니다. Err 1 : 그런 테이블이 없습니다. MealItem 또는 Err 1 : 테이블이 없습니다. 식사.
낯선 사람이됩니다! iOS 5.0이 설치된 Sim에서 동일한 코드를 테스트 할 때 작동합니다! 요청에서 데이터가 반환됩니다!
Error calling sqlite3_step (1: SQL logic error or missing database) SQLITE_ERROR
2012-06-19 11:10:19.684 °°°°°°°[453:707] DB Query: ATTACH DATABASE '/var/mobile/Applications/A05034A8-F5AF-45AA-B520-DF2BBEBB800B/Documents/Meals.db' AS mealDB
우리는 sqlight 관리자에서이 데이터베이스를 연결했는데, 이는 성공 : 아직도 생각이 오류를 몇 번 받고. 이 결과 데이터베이스는 응용 프로그램에서도 작동했습니다. iOS에 데이터베이스를 연결하는 데 문제가있는 것 같습니다. 또는 어딘가에서 오류가 발생했습니다.
우리는 지금까지 행운이없는 해결책을 찾고 있습니다. 여기에 몇 가지 코드
:- (FMDatabase *) attachMealDatabase:(FMDatabase *) db {
if (![db open]) {
NSLog(@"Could not open db.");
return nil;
}else {
}
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentDirectory = [paths objectAtIndex:0];
//const char * mainDBPath = [[documentDirectory stringByAppendingPathComponent:@"Main.db"] UTF8String];
const char * mealDBPath = [[documentDirectory stringByAppendingPathComponent:@"Meals.db"] UTF8String];
NSString *attachSQL = [NSString stringWithFormat: @"ATTACH DATABASE \'%s\' AS mealDB", mealDBPath];
[db beginTransaction];
[db executeUpdate:attachSQL];
[db commit];
//[db close];
return db;
}
예 그렇습니다 :) 아직도 다른 코드가 실패한 이유는 아직 알 수 없습니다. – user1466043