Проблема с запросом sqlite при использовании оболочки - PullRequest
0 голосов
/ 21 апреля 2010
- (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);

Я получаю вывод как: { ( AccessCode = ABCD; ) }

Где как я хочу это как: abcd

Я использую упаковку из: http://th30z.netsons.org/2008/11/objective-c-sqlite-wrapper/

Пожалуйста, помогите.

1 Ответ

0 голосов
/ 21 апреля 2010

Вывод правильный, примеры ясно показывают это также:

    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]);
}

Вы получаете массив словарей NS. Вы могли бы написать, например,

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

и получит желаемый результат.

...