sqlite3 - пока цикл не выполняется - PullRequest
0 голосов
/ 13 сентября 2011

Странная проблема кто-нибудь, пожалуйста, решите ее

Пока цикл не выполняется, в моем коде для чтения базы данных.

Вот мой код

NSString * query=@"select usernote from savenote where recipename like ? ";

            const char * sqlStatement=[query UTF8String];

            sqlite3_stmt *compiledStatement;

            sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL);

            if (sqlite3_prepare_v2 (database, sqlStatement,-1,&compiledStatement,NULL)==SQLITE_OK)
            {
               sqlite3_bind_text(compiledStatement,1,[selString UTF8String],-1,SQLITE_STATIC);
                NSLog(@"selected:%@",selString);


                while (sqlite3_step(compiledStatement)== SQLITE_ROW)
                {


                    NSString * notz=[NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement,0)];
                    [Notes addObject:notz];

                    NSLog(@"n:%@",Notes);
                    txt.text=[Notes objectAtIndex:0];

                }

            }
        }

В приведенном выше коде все работает нормально, кроме цикла while, который никогда не выполняется.

Спасибо за чтение моего поста.

Ответы [ 2 ]

0 голосов
/ 13 сентября 2011

Вы можете перейти по этой ссылке

В вашем случае код будет выглядеть так:

const char * sqlStatement = "select usernote from savenote where recipename like ?001 ";

sqlite3_bind_text(compiledStatement,1,[selString UTF8String],-1,SQLITE_TRANSIENT);
0 голосов
/ 13 сентября 2011

Я думаю, проблема в запросе. Добавьте одинарные кавычки (') в предложении like.

"select usernote from savenote where recipename like '?'";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...