2010-04-21 4 views
0
- (IBAction)EnterButtonPressed:(id)sender { 
    Sqlite *sqlite = [[Sqlite alloc] init]; 

NSArray *paths =NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 
    NSString *writableDBPath = [documentsDirectory stringByAppendingPathComponent:@"test.sqlite"]; 
    if (![sqlite open:writableDBPath]) 
     return; 
NSArray *query = [sqlite executeQuery:@"SELECT AccessCode FROM UserAccess"]; 
NSLog(@"%@",query); 

I 출력 등을 받고 있습니다 사용 : { ( AccessCode = ABCD; ) }문제 래퍼

내가 그것을 원하는 같이 : ABCD를

래퍼를 사용하고 있습니다 : http://th30z.netsons.org/2008/11/objective-c-sqlite-wrapper/

도와주세요. 출력은 정확

답변

0

, 예 명확도를 보여

NSArray *results = [sqlite executeQuery:@"SELECT * FROM test;"]; 
for (NSDictionary *dictionary in results) { 
    NSLog(@"Row"); 
    for (NSString *key in [dictionary keyEnumerator]) 
     NSLog(@" - %@ %@", key, [dictionary objectForKey:key]); 
} 

당신은 NSDictionaries의 배열을 얻을. 예를 들어

NSDictionary *dict = [result at: 0]; 
NSSTring *itemValue = [dict objectForKey: @"AccessCode"] 
NSLog(..., itemValue) 

과 같이 쓸 수 있으며 원하는 출력을 얻을 수 있습니다.

+0

안녕하세요 고마워요, 경고 : NSArray ''에 응답하지 않을 수도 있습니다 : ' 때 objectAtIndex 시도 : 테이블 UserAccess 찾을 수 없습니다. – user285096

+0

NSArray * query = [sqlite executeQuery : @ "SELECT * FROM UserAccess; "]; \t initWithFormat : @ "% @", query]; \t NSDictionary * dict = [query objectAtIndex : 0]; \t NSString * itemValue = [dict objectForKey : @ "AccessCode"]; \t \t \t NSLog (@ "% @", itemValue); ... 덕분에 당신은 대단합니다. – user285096

+0

나는 스몰 토크를 조금 너무 많이 프로그래밍 했었다고 생각합니다. 액세서의 이름은 다음과 같습니다. 그러나 objectAtIndex는 자신을 알아내는 것처럼 꽤 괜찮습니다 .-) – Friedrich