0
저는 iPhone 응용 프로그램에서 작업하고 있습니다. 나는 sqlite getData 메소드가 작성된 재사용 가능한 클래스를 만들었다. 내 컨트롤러에서 SQL 문을 전달하고 모든 행을 가진 배열을 다시 가져 오려고합니다.개체 호출에 sqlite3_stmt를 반환하는 방법
배열에 저장된 sqlite3_stmt 객체를 가져올 수 있고 그 배열을 반환 할 수 있습니다. 따라서 호출 지점에서이를 캐스팅하고 각 열 값을 찾을 수 있습니까?
내 현재 코드가 같다 :
-(NSMutableArray*)getData:(NSString*) SqlQuery
{
// The Database is stoed in the application bundle
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"sqliteClasses.sqlite"];
if(sqlite3_open([path UTF8String], &contactDB) == SQLITE_OK)
{
const char *sql = (const char*)[SqlQuery UTF8String];
sqlite3_stmt *compiledStatement;
if(sqlite3_prepare_v2(contactDB, sql, -1, &compiledStatement, NULL) == SQLITE_OK)
{
// Loop through the results and add them to the feeds array
while (sqlite3_step(compiledStatement) == SQLITE_ROW)//(stepResult == SQLITE_ROW)
{
// [arrayRecords addObject:compiledStatement];
}
}
sqlite3_finalize(compiledStatement);
}
sqlite3_close(contactDB);
return arrayRecords;
}
에러 라인 [arrayRecords addObject : compiledStatement];
어떻게하면됩니까? 이것을 구현하기위한 대안은 무엇입니까?
감사합니다.